1
我試圖用簡單的裝修和交叉驗證以下列方式:R中的「Variable Lengths Differ」錯誤是什麼原因?
library(ISLR)
attach(Auto)
Auto$cut.values = cut(displacement,2)
fit = glm(mpg~Auto$cut.values)
cv.glm(Auto, fit, K=10)$delta[1]
但是我收到一個錯誤:
Error in model.frame.default(formula = mpg ~ Auto$cut.values, data = list(: variable lengths differ (found for 'Auto$cut.values')
但是,如果我嘗試略有變化第三行然後運行它然後我得到沒有錯誤並且得到結果:
Auto$cut.values = cut(displacement,2)
fit = glm(mpg~cut.values, data = Auto)
cv.glm(Auto, fit, K=10)$delta[1]
據我所知,cut.values, data = Auto
與Auto$cut.values
相同。
我在這裏失蹤了什麼?
'mpg'呢?爲什麼你只關心'cut'?你應該定義mpg是指什麼。 – Masoud
我忘了提及它。但我之前使用attach(Auto)。 –
這是非常不願意使用'attach'。這是一個常見的問題來源。您可以使用臨時模擬'with',並且許多函數都有一個數據參數,這些參數將用於相同的目的。 – lmo