我使用了caret包进行交叉验证,但是当我尝试使用预测时,我收到一条错误,指出:" replacement has 1118691 rows, data has 1118705"
。当我使用常规lm()时它做的预测很好。这个错误的解决方案是什么?
这次我无法提供我的数据集,但是当我在玩具数据框架上测试我的代码时,预测工作。所以我猜这是与数据本身有关的事情。
这是我的代码行(在玩具数据上运行良好):
df <- read.table(text = "dateTime birds wolfs snakes
2014-05-21 9 7 a
2014-04-28 8 4 b
2014-04-13 2 8 c
2014-03-12 2 3 a
2014-02-04 8 3 a
2014-02-29 1 2 a
2014-01-17 7 1 b
2014-01-16 1 5 c
2014-09-20 9 7 c
2014-08-21 8 7 c ",header = TRUE)
fitControl3 <- trainControl(## 10-fold CV
method = "repeatedcv",
number = 3,
## repeated 3 times
repeats = 3)
df$lm_pred<-predict(df_model,newdata=df,type='raw')