R に次のような 2 つの線形モデルがあるとします。
lm1 = (x ~ a + b)
lm2 = (x ~ a + b + c)
c が xに及ぼす影響を次のように決定したい
1) 効果の有意性 2) 効果の推定値 3) x の全体的な変動に対する c の寄与 (たとえば、R 2 乗値の c の成分)
anova(lm1, lm2)は有効数字を提供しますが、必要な他の数字、特に上記の 3 は提供しません。
これらの数値を計算するにはどうすればよいですか?
R に次のような 2 つの線形モデルがあるとします。
lm1 = (x ~ a + b)
lm2 = (x ~ a + b + c)
c が xに及ぼす影響を次のように決定したい
1) 効果の有意性 2) 効果の推定値 3) x の全体的な変動に対する c の寄与 (たとえば、R 2 乗値の c の成分)
anova(lm1, lm2)は有効数字を提供しますが、必要な他の数字、特に上記の 3 は提供しません。
これらの数値を計算するにはどうすればよいですか?
追加の容量を提供するパッケージもありますが、通常は と を参照してくださいanova(lm1, lm2)
。私はあなたが何を必要としているのか理解していません. 「c」の加算を伴う因子変数の場合の二乗和と自由度の差は の出力で与えられます。「x に対する 'c' の寄与」は少しあいまいですが、係数 (によって提供される x の「推定」とラベル付けされています) を意味する可能性があります。「回帰分析で「a」と「b」を制御したとき、「x」の変動に対する「c」の寄与は…というようなことを書けと言われているのではないでしょうか。summary(lm2)
effects
anova
summary(lm2)
単一のモデルで二乗和を分解したい場合は、次を見てください。
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
X1 平方和の総平方和のパーセンテージは簡単に計算できます。まずオブジェクトanova(lm2)
をで見てくださいstr()
。それはリストです:
100*anova(lm2)[['Sum Sq']][1]/sum(anova(lm2)[['Sum Sq']])
#[1] 20.05545
「X2 を制御する X1 の部分 R^2」(R^2_Y.X1|X2) は次のとおりです。
anova(lm2)[['Sum Sq']]["X1"]/anova(lm2)[['Sum Sq']][""Residuals"]
と を比べてみてsummary(lm1)
くださいsummary(lm2)
。R 二乗情報は一番下にあるはずです。