Rを通じて統計学を学ぶ備忘録ブログ

SPSSからRに移行したい私のような人向けのR解説ブログ兼学習用備忘録。

第26回 分散分析(対応なし)

第26回は分散分析(対応なし)について書きます。

 

分散分析は3郡以上の母集団の平均値の検定のことです。

例えば、A,B,Cという3郡の母平均は等しいという帰無仮説を設定し、検定します。

ここでAとB,BとC,CとAに分けてt検定を行えば良いのでは??と考えるかもしれませんが、「検定の多重性」が問題となって、あまり好ましい検定とはいえません。それについては今後、取り扱う予定です。

まずはいつものデータ(第12回参照)を使って、一元配置分散分析(対応なし)を行います。等分散仮定(var.equal=TRUE)。oneway.test関数を用います。

oneway.test(demo$mathtest~demo$seminar,var.equal=TRUE) One-way analysis of means data: demo$mathtest and demo$seminar F = 3.3333, num df = 3, denom df = 16, p-value = 0.04612 母分散が等質と仮定したoneway.test関数の結果、帰無仮説が棄却される。

 aov関数を使えば、偏差平方和、自由度などを見ることができます。

aov(demo$mathtest~demo$seminar) Call: aov(formula = demo$mathtest ~ demo$seminar) Terms: demo$seminar Residuals Sum of Squares 55 88 Deg. of Freedom 3 16 Residual standard error: 2.345208 Estimated effects may be unbalanced summary関数の引数にaov関数を入れ込めば、anova関数と同様のことができます。 summary(aov(demo$mathtest~demo$seminar)) Df Sum Sq Mean Sq F value Pr(>F) demo$seminar 3 55 18.33 3.333 0.0461 * Residuals 16 88 5.50 --- Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

anova関数で分析してみます

anova(lm(demo$mathtest~demo$seminar)) Analysis of Variance Table Response: demo$mathtest Df Sum Sq Mean Sq F value Pr(>F) demo$seminar 3 55 18.333 3.3333 0.04612 * Residuals 16 88 5.500 --- Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1

 以上の分散分析表より、帰無仮説が棄却されましたが、どの郡に差があるのかどかまではわかりません。 そのため、TukeyHSD関数を利用して、テューキの方法による多重検定を行います。各群のサンプルサイズ、分散が等しいことを仮定します。

TukeyHSD(aov(demo$mathtest ~ demo$seminar)) Tukey multiple comparisons of means 95% family-wise confidence level Fit: aov(formula = demo$mathtest ~ demo$seminar) $`demo$seminar`     diff    lwr     upr     p adj B-A   -4.4  -8.6435782  -0.1564218   0.0407941 C-A   -0.8  -5.0435782  3.4435782   0.9480662 D-A   -1.6  -5.8435782  2.6435782   0.7069431 C-B   3.6  -0.6435782   7.8435782   0.1117264 D-B   2.8  -1.4435782   7.0435782  0.2717802 D-C   -0.8  -5.0435782  3.4435782  0.9480662 結局、5%水準でB−A間のみで差があることがわかりました。

 

 以上で、第26回はお終いです。

広告を非表示にする