[R] lm.ridge again

From: <daniel_at_sintesys.com.ar>
Date: Tue 23 Aug 2005 - 03:03:29 EST

Hello, I have posted this mail a few days ago without any answer:

I have the following doubts related with lm.ridge, from MASS package. To show the problem using the Longley example, I have the following doubts:

First: I think coefficients from lm(Employed~.,data=longley) should be equal coefficients from lm.ridge(Employed~.,data=longley, lambda=0) why it does not happen?
Second: if I have for example
Ridge<-lm.ridge(Employed~., data=longley, lambda = seq(0,0.1,0.001)), I suppose intercept coefficient is defined implicit, why it does not appear in Ridge\$coef?

Third: I suppose that if I define

```1) y<-longley\$Employed
2) X<-as.matrix(cbind(1,Longley[,1:6])
3) I as the identity
the following should be true:
Coef=(X'X+kI)^(-1) X'y
```

and if a take k=Ridge\$kHKV, the coefficients should be approx equal to Ridge\$Coef[near value of kHKV] and it does not seem to happen, why?

Values:
> Ridge\$kHKB

[1] 0.004275357

Using the calculation above (third question, third point): Coef=

```                      [,1]
1            -0.095492310
GNP.deflator -0.052759002
GNP           0.070993540
Unemployed   -0.004244391
Armed.Forces -0.005725582
Population   -0.413341544
Year          0.048420107

```

And if I take from Ridge&coef:

Ridge\$coef[0.004]
GNP.deflator -0.03098507
GNP -1.32553151
Unemployed -1.53237769
Armed.Forces -0.63334911
Population -0.88690241
Year 6.82105049

Any help, suggestion or orientation?