Rfu*_*ful 3 statistics r linear-regression
假设我在R中有两个线性模型,这样:
lm1 =(x~a + b)
lm2 =(x~a + b + c)
我想确定c对x的影响
1)效果的重要性2)效应的估计3)c对x的整体变化的贡献(例如,C的R平方值的分量)
anova(lm1,lm2)为我提供了一个有意义的数字,但不是我需要的其他数字,特别是上面的3个.
我该如何计算这些数字?
通常的方式是查看anova(lm1, lm2)和查看summary(lm2),尽管有一个effects可以提供额外容量的包装.我不明白你需要做些什么是不够的.如果它是伴随"c"的加法的因子变量,则平方和与自由度的差异由输出提供anova."c'对x的贡献"有点模糊,但可能意味着系数(由x提供的标记为"Estimate" summary(lm2)).当在回归分析中控制"a"和"b"时,你可能会被要求写出"c"对"x"变化的贡献......"
如果你想在一个模型中分解平方和,只需看一下:
anova(lm2)
######
Analysis of Variance Table
Response: Y
Df Sum Sq Mean Sq F value Pr(>F)
X1 1 2.2167 2.21672 4.9554 0.03982 *
X2 1 1.2316 1.23156 2.7531 0.11540
Residuals 17 7.6047 0.44733
---
Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1
Run Code Online (Sandbox Code Playgroud)
可以容易地计算X1平方和中的总平方和的百分比.首先看物体anova(lm2)有str().这是一个清单:
100*anova(lm2)[['Sum Sq']][1]/sum(anova(lm2)[['Sum Sq']])
#[1] 20.05545
Run Code Online (Sandbox Code Playgroud)
"X1控制X2的部分-R ^ 2"(R ^ 2_Y.X1 | X2)是:
anova(lm2)[['Sum Sq']]["X1"]/anova(lm2)[['Sum Sq']][""Residuals"]
Run Code Online (Sandbox Code Playgroud)