这是一个在R中使用的随机森林模型。它是一个基于Ladbroke赔率的足球预测模型,用于预测比赛的全场结果(FTR)。
zmodel <- randomForest(traindata$FTR ~ traindata$LBH + traindata$LBD + traindata$LBA)
我尝试在训练数据本身进行预测,使用的是
predict(zmodel,newdata = traindata)
然后,我在新的测试数据上进行了预测。
predict(zmodel,newdata = testdata)
尽管测试数据和训练数据不同,我却得到了相同的预测结果。我做错了什么?
是否可以对行数与训练数据不同的数据进行预测?
回答:
我假设你已经正确地将数据分割成了训练和测试数据集(包含不同的观测值)。值得检查一下这一点。
不要使用:
zmodel <- randomForest(traindata$FTR ~ traindata$LBH + traindata$LBD + traindata$LBA)
尝试使用:
zmodel <- randomForest(FTR ~ LBH + LBD + LBA, data = traindata)
这样可以处理长度不同的训练和测试数据集。例如:
predictForest1 = predict(zmodel, newdata = traindata)predictForest2 = predict(zmodel, newdata = testdata)