R-随机森林预测因预测因子中的NA而失败

时间:2014-02-04 17:43:17

标签: r random-forest na

文档(如果我正确读取它)说随机森林预测函数如果遇到某些观测值的NA预测值则会产生NA预测。

  

注意:如果对象继承自randomForest.formula,那么任何数据   在预测中默默地省略了NA。返回的值   将在聚合和单个树中相应地包含NA   预测(如果请求),但不在邻近或节点矩阵中

但是,如果我尝试在预测变量中使用一些NA的数据集上使用预测函数[在2688中的7个观测值中的NA],我会遇到以下错误情况,并且预测失败。

  

predict.randomForest(模型,   new.ds):newdata中缺少值

如果可能的话,我想避免一些稍微混乱的解决方法。

我在做/读错了吗?是否必须对"inherits from randomForest.formula"子句执行某些操作?

1 个答案:

答案 0 :(得分:0)

使用文档中的一些示例:

set.seed(1)
x <- data.frame(x1=gl(32, 5), x2=runif(160), y=rnorm(160))
rf1 <- randomForest(x[-3], x[[3]], ntree=10)
> inherits(rf1,"randomForest.formula")
[1] FALSE

> iris.rf <- randomForest(Species ~ ., data=iris, importance=TRUE,
                         proximity=TRUE)
> inherits(iris.rf,"randomForest.formula")
[1] TRUE

因此,您可能在不使用公式界面的情况下调用randomForest以适合您的模型。