更奇怪了。原来大家不是都说增加自变量后的线性模型的R-square总会增加吗?下面的例子并不是这样的:
<br />
> x=matrix(rnorm(20),ncol=2)<br />
> y=rnorm(10)<br />
> <br />
> lm=lm(y~1)<br />
> y.hat=rep(1*lm$coefficients,length(y))<br />
> (r.square=sum((y.hat-mean(y))^2)/sum((y-mean(y))^2))<br />
[1] 2.646815e-33<br />
> <br />
> lm=lm(y~x-1)<br />
> y.hat=x%*%lm$coefficients<br />
> (r.square=sum((y.hat-mean(y))^2)/sum((y-mean(y))^2))<br />
[1] 0.4443356<br />
> <br />
> ################ This is the biggest model, but its R2 is not the biggest, why?<br />
> lm=lm(y~x)<br />
> y.hat=cbind(rep(1,length(y)),x)%*%lm$coefficients<br />
> (r.square=sum((y.hat-mean(y))^2)/sum((y-mean(y))^2))<br />
[1] 0.2704789