[英]how to convert numeric column to factor in R
我正在尝试使用softImpute
命令(来自softImpute
包)来填充缺失值,并且我试图在使用softImpute
之前将大数据帧中的分类变量转换为因子类型。
我使用了as.factor
命令和factor
命令,但它们都产生了以下结果
train[a]=factor(train[a])
Error in sort.list(y) : 'x' must be atomic for 'sort.list'
Have you called 'sort' on a list?
a
在这里是像一个矢量: c(1:92)
我也试过as.character
但是softImpute
命令不会将变量识别为字符并将它们视为数字,从而产生分类/指示变量的十进制值。
尝试:
train[[a]]=factor(train[[a]])
当然,这确实假设,a
是具有1:length(train)
范围内的数值的对象,或者是names(train)
向量中的值之一。 如果使用“[”引用数据框,则会得到一个列表,其中一个元素恰好是您希望“分解”的向量,但它实际上不是一个向量,而是一个单元素列表。 “[[”函数只为您提供向量。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.