我能找到的所有使用随机森林进行预测的例子都已经有了实际的答案(即测试集有标签)。当你没有这个栏目的时候你会怎么做?
例如,本教程使用虹膜数据:http://mkseo.pe.kr/stats/?p=220
如果我们真的这样做,测试数据集应该有第1,4列,而不是第5列。如果您尝试在没有第5列的情况下运行此测试数据集,则会引发一个错误,即数据帧的大小不同,显然它们不是。
当你还没有一列答案时,你如何做出预测呢?
使用上述链接中的摘录编辑澄清:
准备训练和测试集。
test = iris[ c(1:10, 51:60, 101:110), ]
train = iris[ c(11:50, 61:100, 111:150), ]测试数据框架有一个完整的物种列。我试着根据我从训练集上种植的森林来预测物种。所以我现在所处的位置是在跑步之后:
test <- test[-5] 我现在的情况是,如果我出去收集了一堆植物的测量数据,并想知道基于我从训练数据中生长出来的树木模型的物种。那么,如何根据测试数据框中的剩余数据和使用训练数据框生长的森林来预测我刚刚删除的物种列呢?
发布于 2013-07-05 09:21:13
尽管您引用的教程在test集合中有Species列,但正如您猜测的那样,predict函数并不需要它:
library(randomForest)
test <- iris[ c(1:10, 51:60, 101:110), -5] # removed the Species column here.
train <- iris[ c(11:50, 61:100, 111:150), ]
r <- randomForest(Species ~., data=train, importance=TRUE, do.trace=100)
predict(r, test)https://stackoverflow.com/questions/17479632
复制相似问题