Случайные леса в R (пустые классы в y и длина аргумента 0)

Я впервые имею дело со случайными лесами, и у меня возникают некоторые проблемы, которые я не могу понять ... Когда я запускаю анализ по всему моему набору данных (около 3000 строк), я не получаю никаких сообщение об ошибке. Но когда я выполняю тот же анализ для подмножества моего набора данных (около 300 строк), я получаю ошибку:

dataset <- read.csv("datasetNA.csv", sep=";", header=T)
names (dataset)
dataset2 <- dataset[complete.cases(dataset$response),]
library(randomForest)
dataset2 <- na.roughfix(dataset2)
data.rforest <- randomForest(dataset2$response ~ dataset2$predictorA + dataset2$predictorB+ dataset2$predictorC + dataset2$predictorD + dataset2$predictorE + dataset2$predictorF + dataset2$predictorG + dataset2$predictorH + dataset2$predictorI, data=dataset2, ntree=100, keep.forest=FALSE, importance=TRUE)

# subset of my original dataset:
groupA<-dataset2[dataset2$order=="groupA",]
data.rforest <- randomForest(groupA$response ~ groupA$predictorA + groupA$predictorB+ groupA$predictorC + groupA$predictorD + groupA$predictorE + groupA$predictorF + groupA$predictorG + groupA$predictorH + groupA$predictorI, data=groupA, ntree=100, keep.forest=FALSE, importance=TRUE)

Error in randomForest.default(m, y, ...) : Can't have empty classes in y.

Однако моя переменная ответа не имеет пустого класса.

Если вместо этого я напишу randomForest, например, (a+b+c,y), а не (y ~ a+b+c), я получу другое сообщение:

Error in if (n == 0) stop("data (x) has 0 rows") : 
  argument length zero
Warning messages:
1: In Ops.factor(groupA$responseA + groupA$responseB,  :
  + not meaningful for factors

Вторая проблема заключается в том, что, когда я пытаюсь вписать свои данные через rfImpute(), я получаю ошибку:

Errore in na.roughfix.default(x) :  roughfix can only deal with numeric data

Однако в моих столбцах указаны все факторы и числа.

Может кто-нибудь увидеть, где я не прав ???

13
задан joran 22 November 2012 в 01:10
поделиться