我的数据框中有115个变量,我需要为每个具有负值或999的变量创建一个虚拟变量。如果原始x值<0或999且0,则虚拟指示器将取值为1。除此以外。例如以下数据框
at<-c(1,-9,-1,999)
Bc<-c(1,-2,999,0)
df<-data.frame(at,Bc)
我想要具有以下格式的输出数据框:
at Bc I.at I.Bc
1 1 0 0
-9 -2 1 1
-1 999 1 1
999 0 1 0
您可以使用以下基本R解决方案:
transform(df,I=ifelse(df<0|df==999,1,0))
at Bc I.at I.Bc
1 1 1 0 0
2 -9 -2 1 1
3 -1 999 1 1
4 999 0 1 0
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句