Я новичок в Случайных лесах в R, и я пытаюсь сделать прогноз. Я построил модель случайного леса, используя следующий код, который отлично работает
library(randomForest)
RF_model = randomForest(trainrows[,col_truth]~.
,data = trainrows[,cols_to_use]
,ntree=100
,do.trace=T)
Если я распечатаю RF_model, я получу следующий результат
Call:
randomForest(formula = trainrows[, col_truth] ~ ., data = trainrows[, cols_to_use], ntree = 100, do.trace = T)
Type of random forest: classification
Number of trees: 100
No. of variables tried at each split: 4
OOB estimate of error rate: 19.23%
Confusion matrix:
0 1 class.error
0 7116 1640 0.1873001
1 1725 7015 0.1973684
Затем, когда я пытаюсь сделать прогноз с помощью модели, я получаю следующую ошибку
> predict(RF_model)
Error in 1:dim(data)[1] : argument of length 0
Я попытался предоставить данные методу прогноза, но получаю ту же ошибку. Кто-нибудь знает, что происходит и как исправить?
РЕДАКТИРОВАТЬ
Чтобы предоставить больше данных, я попытался использовать случайные леса с набором данных iris.
rf = randomForest(iris[,1]~., data=iris[,c(1, 2)], ntree=100)
predict(rf)
Error in 1:dim(data)[1] : argument of length 0
Думаю, это связано не с моими данными, а с моей версией R. Любые идеи?
rf = randomForest(iris[,1]~., data=iris[,c(1, 2)], ntree=100) ; predict(rf)
работает нормально, поэтому эта проблема, вероятно, специфична для вашего набора данных. Пожалуйста, включите воспроизводимый пример. - person josliber♦   schedule 27.06.2014