预测变量中不允许使用随机森林错误NA

时间:2013-05-07 10:04:38

标签: r random-forest

您好我正在使用以下r脚本构建随机林:

# load the necessary libraries                      
library(randomForest)


testPP<-numeric()


# load the dataset
QdataTrain <- read.csv('train.csv',header = FALSE)
QdataTest <- read.csv('test.csv',header = FALSE)

QdataTrainX <- subset(QdataTrain,select=-V1)
QdataTrainY<-as.factor(QdataTrain$V1)   

QdataTestX <- subset(QdataTest,select=-V1)
QdataTestY<-as.factor(QdataTest$V1)
mdl <- randomForest(QdataTrainX, QdataTrainY) 

我收到以下错误:

Error in randomForest.default(QdataTrainX, QdataTrainY) : 
  NA not permitted in predictors

但我发现我的数据中没有出现NA。

供参考,这是我的数据:

https://docs.google.com/file/d/0B0iDswLYaZ0zUFFsT01BYlRZU0E/edit

有谁知道为什么会抛出这个错误?我会继续寻找同一时间​​。 在此先感谢您的帮助!

1 个答案:

答案 0 :(得分:4)

给定的数据确实包含一些缺失值(特别是7个):

sapply(QdataTrainX, function(x) sum(is.na(x)))

## V2  V3  V4  V5  V6  V7  V8  V9 V10 V11 V12 V13 V14 V15 V16 
## 0   0   0   0   0   0   0   0   0   0   0   0   0   0   0 
## V17 V18 V19 V20 V21 V22 V23 V24 V25 V26 V27 V28 V29 
## 0   0   0   0   0   0   1   1   1   1   1   1   1 

因此,列V23到V29每个都有一个缺失值

which(is.na(QdataTrainX$V23))

## 318

给出行号。