2015-07-13 29 views
0

我有一個R問題。我想知道爲什麼使用lm進行原始迴歸分析時p值與使用DAAG軟件包進行k倍交叉驗證時存在差異。迴歸的迴歸和交叉驗證 - 爲什麼不同的p值?

所以,首先我運行迴歸。

Model = lm(ExampleData$DependentVariable ~ ExampleData$IV1 + ExampleData$IV2 + ExampleData$IV3 + ExampleData$IV4) 

這給出了預測變量的p值(如下所示)。

(Intercept) = 0.01958 *, ExampleData$IV1 = 0.05631 ., ExampleData$IV2 = 0.00295 **, ExampleData$IV3 = 0.00492 **, ExampleData$IV4 = 0.00473 ** 

然後,我去在DAAG包中使用cv.lm來交叉驗證模型。

cv.lm(df=ExampleData, Model_forCV, m=5) 

這給出了交叉驗證結果以及預測變量的p值(如下所示)。

IV1 = 0.07541 . , IV2 = 0.00059 ***, IV3 = 0.03938 * , IV4 = 0.00473 ** 

爲什麼p值不同?

回答

0

似乎在第二個模型中缺少一個截距項。或者是隱藏的。

缺失的截距項可以解釋變化的p值。它會改變std錯誤,t值和p值。更不要說改變回歸係數(就像你在結果中看到的那樣)。