我正在尝试重新编码,并且遇到了一个看起来很简单的障碍,但是在互联网上询问了很长时间后我无法弄清楚,所以我很感激你能提供的任何帮助。
我有一些包含 NA 的数据。我想使用这些数据重新编码,但继续遇到错误“下标分配中不允许使用 NA”。当我试图创建一个示例数据集时,我还遇到了一个警告,我没有“有意义的因素”。任何帮助,将不胜感激。
我的人造数据有三个变量:“var1”和“var2”(字符,有时缺失)和“var3”(数字)。我想创建第四个变量,如果 beta 大于零,则包含“var1”的值,如果 beta 小于零,则包含“var2”的值。如果 var1 或 var2 丢失,我希望新变量也丢失:
var1<-c("A","T",NA,"G","C")
var2<-c("G","A",NA,"A","G")
var3 <-c(-.1,3,-4,5,-3)
df=as.data.frame(cbind(var1,var2,var3))
df$newVar[df$var3>0]=df$var1[df$var3>0]
df$newVar[df$var3<0]=df$var2[df$var3<0]
我得到的是一堆红色:
df$newVar[df$var3>0]=df$var1[df$var3>0]
Error in df$newVar[df$var3 > 0] = df$var1[df$var3 > 0] :
NAs are not allowed in subscripted assignments
In addition: Warning messages:
1: In Ops.factor(df$var3, 0) : > not meaningful for factors
2: In Ops.factor(df$var3, 0) : > not meaningful for factors
df$newVar[df$var3<0]=df$var2[df$var3<0]
Error in df$newVar[df$var3 < 0] = df$var2[df$var3 < 0] :
NAs are not allowed in subscripted assignments
In addition: Warning messages:
1: In Ops.factor(df$var3, 0) : < not meaningful for factors
2: In Ops.factor(df$var3, 0) : < not meaningful for factors
任何意见,将不胜感激。谢谢你。