0
我正在与随机森林中的R包一个错误的位置后,我分裂使用插入符号为训练和测试,当我去预测我的数据遇到错误:随机森林从测试预测误差集
Error in predict.randomForest(randomForestFit, type = "response", newdata =testing$GEN)
:number of variables in newdata does not match that in the training data
我从完全相同的文件中分离列车和测试之间的文件。任何数据中都没有N/A或缺失值。以下是我的完整代码,但我认为那里没有错误。我对这个错误发生的原因感到不知所措。任何想法将不胜感激!
library(caret)
require(foreign)
set.seed(825)
data <- read.spss("C:/MODEL_SAMPLE.sav",use.value.labels=TRUE, to.data.frame = TRUE)
inTraining <- createDataPartition(data$GEN, p = 0.75, list = FALSE)
training <- data[inTraining, ]
testing <- data[-inTraining, ]
library(randomForest)
library(foreach)
start.time <- Sys.time()
randomForestFit <- foreach(ntree=rep(63, 8), .combine=combine, .packages='randomForest')
%dopar% randomForest(training[-201],
training$GEN,
mtry = 40,
ntree=ntree,
verbose = TRUE,
importance = TRUE,
keep.forest=TRUE,
do.trace = TRUE)
randomForestFit
predict = predict(randomForestFit, type="response", newdata=testing$GEN)
stopCluster(cl)
end.time <- Sys.time()
time.taken <- end.time - start.time
time.taken
检查整个数据集的N/A,VALUE!并缺少任何东西。没有出现。所有变量都是数字,除了dep是2因子var(是/否)之外。 – CooperBuckeye05
好吧,你是否尝试阅读csv?我以前在阅读一个非常大的SPSS文件时遇到了问题,这对我很有用。使用read.csv中的选项:stringsAsFactors = FALSE,strip.white = TRUE,na.strings = c(“NA”,“”,“n/a”,“null”),如果需要可以添加其他选项。 – RVNorman
也保存到CSV,它完全导出/打开。然后扫描csv文件中的N/A和值!以及空间......什么也没有 – CooperBuckeye05