R 将因子转换为整数时产生的NaN
我需要代码修复。我有一个数据框,它由非数字(R 将因子转换为整数时产生的NaN,r,R,我需要代码修复。我有一个数据框,它由非数字(Var)和数字(Var.num)变量组成,如下所示(一行): 至少有一个数值变量被认为是一个因子(每行可能不同),为了使我的其他代码正常工作(无需在此发布),我需要将所有因子更改为整数,在快速研究和调整后,我得到了如下结果: newdf <- lapply(df, function(x) if(is.factor(x)) as.integer(levels(x))[x] else x) 你能告诉我我的代码的哪一部分应该被修改,这样非数值变
Var
)和数字(Var.num
)变量组成,如下所示(一行):
至少有一个数值变量被认为是一个因子
(每行可能不同),为了使我的其他代码正常工作(无需在此发布),我需要将所有因子
更改为整数
,在快速研究和调整后,我得到了如下结果:
newdf <- lapply(df, function(x) if(is.factor(x)) as.integer(levels(x))[x] else x)
你能告诉我我的代码的哪一部分应该被修改,这样非数值变量在输出中会和在预转换的数据帧中一样吗?可能只是
unclass(x)
对于is.factor
分支?我忘了的一件新事情是在FUN(x[[i]],…):强制引入的NAs
newdf <- lapply(df, function(x) if(is.factor(x)) as.integer(levels(x))[x] else x)
Var1 Var2 Var3 Var4 Var.num1 Var.num2 Var.num3
1 #N/D! #N/D! #N/D! #N/D! 2010 2011 1.2