0
我在數據框中有57個特徵(列)〜4600行數據集。爲了計算良好的嶺迴歸參數,我想對其進行10倍交叉驗證。有人能告訴我如何在R中做到這一點?使用交叉驗證來計算嶺迴歸參數
我在數據框中有57個特徵(列)〜4600行數據集。爲了計算良好的嶺迴歸參數,我想對其進行10倍交叉驗證。有人能告訴我如何在R中做到這一點?使用交叉驗證來計算嶺迴歸參數
ridge.cv()
在parcor
包是專爲此目的而設計的。
這裏是從手動拍攝的例子:
> n<-100 # number of observations
> p<-60 # number of variables
> X<-matrix(rnorm(n*p),ncol=p)
> y<-rnorm(n)
> ridge.object<-ridge.cv(X,y)
> ridge.object
$intercept
0.01146743
$coefficients
X1 X2 X3 X4 X5 X6 X7
1.709387e-02 4.833916e-03 3.954463e-03 -9.671448e-03 4.507962e-03 -6.370366e-03 -4.655737e-02
...
X57 X58 X59 X60
-2.119606e-03 -1.229390e-04 -1.912877e-03 -1.833788e-02
$lambda.opt
[1] 540
這裏,$lambda.opt
是使用十折交叉驗證所獲得的正則化參數的最佳值。