我正在尝试使用 for 循环来确定用于回归中每个变量的最佳多项式次数,然后将使用 k 折交叉验证。我收到一个错误“xj[i] 中的错误:只有 0 可能与负下标混合”。我知道这段代码可能不是很“r-ish”,因为我是该语言的新手,所以任何其他提示也会有所帮助。
b1 = rep(0,27)
b2 = rep(0,27)
b3 = rep(0,27)
cv.error = rep(0,27)
index = 1
for (i in c(2,3,4)) {
for (j in c(2,3,4)) {
for (k in c(2,3,4)) {
fit = lm(user_Score ~
poly(user_count, i),
poly(year_of_Release, j),
poly(global_Sales, k), data = video_games)
b1[index] = i
b2[index] = j
b3[index] = k
cv.error[index] = cv.glm(video_games, fit, K=10)$delta[1]
index = index + 1
}
}
}
我希望最终得到存储每个组合以及 MSE 的向量,以便我可以看到哪种组合是最佳的。