作者shyfang (气到快中风的TA)
看板NCTU-STAT94G
标题大师说…
时间Fri Nov 10 21:10:35 2006
可以参考大师的网页
http://stat.sinica.edu.tw/~swcheng/course/stat5040/index.html
p.4-13
x initial pressure
f substance
y decrease in pressure
主要是predictors共线性和anova函数处理的问题
> cor(x,f)
[1] -0.1569098
如果是orthogonal 就没有共线的问题
他们有一点点关连,所以在fit的时候,互相帮忙解释一点
当某一个消失的时,sum sq.就会不同
> anova(lm(y~f+x))
Analysis of Variance Table
Response: y
Df Sum Sq Mean Sq F value Pr(>F)
f 1 245.00 245.00 4.0393 0.0605980 .
x 1 1490.08 1490.08 24.5668 0.0001200 ***
Residuals 17 1031.12 60.65
> anova(lm(y~x+f))
Analysis of Variance Table
Response: y
Df Sum Sq Mean Sq F value Pr(>F)
x 1 1272.16 1272.16 20.9740 0.0002663 ***
f 1 462.92 462.92 7.6321 0.0133108 *
Residuals 17 1031.12 60.65
x 和 f 解释的总合是一样的 245+1490.8=1272.16+462.92=1735.08
当然不管是上面那一个RSS(不用能x f解释的部分)是一样的
anova的算法是从我们给的大model下另找一个小model的 sum sq.
RSS(I)-RSS(II)-->另一个predictor的sum sq.
anova会"依序"来决定那一个要先消失
所以,fit的时候没有差别,但是做anova的时候会有差
(和factor 或continue没有关系)
lm_y1=lm(y~x+f)
lm_y2=lm(y~f)
lm_y3=lm(y~x)
其实anova的工作是这样的
他再找一个更小的model
那个小model(就是y~x)来和这个model来比较
所以当顺序改变的时候
小model就变成了y~f
我们希望的anova是这样做:
> anova(lm_y3,lm_y1)
Analysis of Variance Table
Model 1: y ~ x
Model 2: y ~ x + f
Res.Df RSS Df Sum of Sq F Pr(>F)
1 18 1494.04
2 17 1031.12 1
462.92 7.6321 0.01331 *
红色部分是我们想要的Sum Sq of f
下面的不是我们想要的sum Sq of x
> anova(lm_y2,lm_y1)
Analysis of Variance Table
Model 1: y ~ f
Model 2: y ~ x + f
Res.Df RSS Df Sum of Sq F Pr(>F)
1 18 2521.2
2 17 1031.1 1
1490.1 24.567 0.0001200 ***
从1490.1来算f的话就会不对了
因为我们要的小model 是lm_y3而不是lm_y2
根据大师的解释大概就是这样了…
希望你们看得懂
不然就找水果小姐来翻译一下了
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.113.188.116
1F:→ shyfang:谁会想到那两个有共线性啊! 11/10 23:44
2F:推 newwmei:挖~讲解的好清楚压~谢谢雪芳^^Y 11/11 10:58