我试图在R(quantregForest)中使用分位数回归森林函数,它建立在随机森林包上.我收到类型不匹配错误,我无法理解为什么.
我用它训练模型
qrf <- quantregForest(x = xtrain, y = ytrain)
Run Code Online (Sandbox Code Playgroud)
哪个工作没有问题,但当我尝试用新数据测试时
quant.newdata <- predict(qrf, newdata= xtest)
Run Code Online (Sandbox Code Playgroud)
它给出以下错误:
Error in predict.quantregForest(qrf, newdata = xtest) :
Type of predictors in new data do not match types of the training data.
Run Code Online (Sandbox Code Playgroud)
我的培训和测试数据来自单独的文件(因此是单独的数据框),但具有相同的格式.我已经检查了预测变量的类
sapply(xtrain, class)
sapply(xtest, class)
Run Code Online (Sandbox Code Playgroud)
这是输出:
> sapply(xtrain, class)
pred1 pred2 pred3 pred4 pred5 pred6 pred7 pred8
"factor" "integer" "integer" "integer" "factor" "factor" "integer" "factor"
pred9 pred10 pred11 pred12
"factor" "factor" "factor" "factor"
> sapply(xtest, class)
pred1 pred2 pred3 pred4 …Run Code Online (Sandbox Code Playgroud)