预测变量中不允许使用NA。 missForest

时间:2019-01-28 23:08:37

标签: r random-forest imputation

我正在使用missForest来估算丢失的数据。我将数据作为数据框,并将其放入missForest函数中时出现错误:

  

randomForest.default中的错误(x = obsX,y = obsY,ntree = ntree,mtry = mtry ,:在预测变量中不允许使用NA

但是,由于我没有预测变量,所以我只是想推论我不知道这是从哪里来的。下面的代码应使用示例数据集重现该问题。

下面的代码是我的问题的模拟版本。但是,我已经尝试将Y转换为数据帧,并且遇到相同的错误。

Y <- prodNA(matrix(as.character(runif(100) > 0.5), nrow=10))
missForest(Y)

1 个答案:

答案 0 :(得分:0)

我通过以下方式将所有字符列更改为因子:

df = data.frame(apply(df, 2, as.factor))

这就解决了我的错误。
正如 Steffen Moritz 所说,missforest 需要数字或因子输入。