【发布时间】:2020-02-16 03:33:43
【问题描述】:
这是我正在运行的代码:
library(caret)
library(ISLR)
data('Auto')
cverror <- c()
for(i in 1:5){
train_control <- trainControl(method='LOOCV')
models <- train(mpg~poly(horsepower,i), data = Auto, trControl=train_control, method='glm')
cverror[i] <- (models$results$RMSE)^2
}
cverror
我想要完成的是使用循环计算不同多项式级别的 MSE(均方误差),因此我不必逐行编写代码。我收到的错误信息是:
Error in `[.data.frame`(data, , all.vars(Terms), drop = FALSE) :
undefined columns selected
为什么我会收到此错误消息?我的学习伙伴说,这段代码在他们的机器上运行良好,但在我的个人或工作计算机上不起作用。我安装了最新的 RStudio 和 R 版本,所有软件包都是最新的。
以下代码行正常工作:
train(mpg~poly(horsepower,2), data = Auto, trControl=train_control, method='glm')
这与 ISLR 文本第 192/193 页上的教程有关(我正在对其进行扩展)。
【问题讨论】: