2012-04-28 77 views
2

我正在处理一个有很多NA的数据集。我知道前6列没有任何NA。由于第一列是ID列,我省略了它。R RandomForest意外NA输出

我运行下面的代码来仅选择具有在响应列值行:

sub1 <- TrainingData[which(!is.na(TrainingData[,70])),] 

我然后使用SUB1作为数据使用此代码在一个随机森林设置:

set.seed(448) 
RF <- randomForest(sub1[,c(2:6)], sub1[,70] 
    ,do.trace=TRUE,importance=TRUE,ntree=10,,forest=TRUE) 

然后我运行此代码来检查NA的输出:

> length(which(is.na(RF$predicted))) 
[1] 65 

我找不出来wh如果数据是干净的,我会得到NA。

有什么建议吗?

回答

5

我想你应该使用更多的树木。因为predicted值是包外套装的先决条件。如果树的数量非常小,某些情况从不出现在袋外,因为这个集合是随机形成的。