【发布时间】:2020-06-02 22:32:49
【问题描述】:
我正在尝试运行以下命令:
predDF <- data.frame(pred.RF, pred.SVM, pred.KNN, pred.NB, pred.BGM, pred.MARS, pred.GAM, pred.SGD, satisfied = pr.out.incl.score.val.2.df.x$satisfied)
modelStack1 <- train(satisfied ~ ., predDF, method = "glm")
testPredLevelOne <- data.frame(pred.RF.3, pred.SVM.3, pred.KNN.3, pred.NB.3, pred.BGM.3, pred.MARS.3, pred.GAM.3, pred.SGD.3, satisfied = pr.out.incl.score.val.3.df.x$satisfied)
combPred1 <- predict(modelStack1, testPredLevelOne)
数据框predDF 有4888 个观测值(行),数据框testPredLevelOne 有2632 个观测值(行)。据我了解,当我执行combPred1 <- predict(modelStack1, testPredLevelOne) 时,这种观察次数的差异并不重要。但是当我执行该行时,我收到以下错误:
Warning message:
'newdata' had 2632 rows but variables found have 4888 rows
我该如何解决这个错误?
更多参考,当我做str(testPredLevelOne)时,输出如下:
str(testPredLevelOne)
'data.frame': 2632 obs. of 9 variables:
$ pred.RF.3 : Factor w/ 2 levels "0","1": 1 1 2 1 2 1 1 2 2 1 ...
$ pred.SVM.3 : Factor w/ 2 levels "0","1": 1 1 2 2 2 1 1 2 2 2 ...
$ pred.KNN.3 : Factor w/ 2 levels "0","1": 1 1 2 2 2 2 1 2 2 2 ...
$ pred.NB.3 : Factor w/ 2 levels "0","1": 1 1 2 2 2 1 1 2 2 1 ...
$ pred.BGM.3 : Factor w/ 2 levels "0","1": 1 1 2 2 2 1 1 2 2 1 ...
$ pred.MARS.3: Factor w/ 2 levels "0","1": 1 1 2 2 2 1 1 2 2 2 ...
$ pred.GAM.3 : Factor w/ 2 levels "0","1": 1 1 2 2 2 1 1 2 2 2 ...
$ pred.SGD.3 : Factor w/ 2 levels "0","1": 1 1 2 2 2 1 1 2 2 1 ...
$ satisfied : Factor w/ 2 levels "0","1": 1 1 2 1 2 1 1 1 1 1 ...
谢谢,
【问题讨论】:
-
你能显示
str(testPredLevelOne)的输出吗 -
您好,感谢您的评论,我根据您的要求更新了我的帖子
-
您是否尝试将两个数据框的列名设置为相同?
标签: r machine-learning r-caret