使用交叉验证计算岭回归参数

时间:2013-03-06 13:36:45

标签: r

我在数据框中有一个57个特征(列)~4600行数据集。为了计算好的岭回归参数,我想对它进行10次交叉验证。有人可以告诉我如何在R中这样做吗?

1 个答案:

答案 0 :(得分:6)

parcor包中的

ridge.cv()仅用于此目的。

以下是手册中的一个例子:

> 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是使用十倍交叉验证获得的正则化参数的最佳值。