分散分析(1元配置)

3つ以上のグループの平均を一度に比較する

難易度 Lv 4 / 10想定時間:約25

できるようになること


はじめに:t検定を何度も繰り返してよいか

「フィッシャーの3原則と実験計画」で学んだ原則に従い、ある農業試験場が3種類の肥料(A・B・C)の効果を比較する実験を行ったとします。各肥料をそれぞれ4つの区画に無作為に割り当て、収穫量を記録しました。

さて、3つの肥料を比較するにはどうすればよいでしょうか。「2つのグループの平均を比較するならt検定を使えばよい」と学んだことを思い出すと、AとB、BとC、AとCの3組をそれぞれt検定で比較すればよさそうに思えます。

しかし、この方法には深刻な問題があります。1回のt検定で有意水準 α=0.05\alpha = 0.05 を使うと、「本当は差がないのに差があると判定してしまう確率(第1種の過誤:帰無仮説が正しいのに棄却してしまう誤り)」は5%です。ところが、3回の検定を繰り返すと、少なくとも1回は誤って「差がある」と判定してしまう確率は次のように膨らみます。

1(10.05)3=10.8570.141 - (1 - 0.05)^3 = 1 - 0.857 \approx 0.14

つまり、本当はどの肥料にも差がなくても、約14%の確率で「どれかに差がある」という誤った結論に至ってしまいます(※厳密には同じデータを使うため各検定は完全には独立ではありませんが、検定を繰り返すことで誤って有意と判定する確率が雪だるま式に膨らむという本質は変わりません)。比較するグループが4つ、5つと増えれば、この確率はさらに大きくなります。

この問題を解決するために生み出されたのが分散分析(ANOVA:Analysis of Variance)です。分散分析は、複数のグループの平均を一度の検定で同時に比較することで、第1種の過誤を有意水準 α\alpha に正しく制御します。


「分散」で「平均の差」を調べる

分散分析という名前を見ると「分散を分析する手法」のように思えますが、実際の目的はグループ間の平均に差があるかどうかを調べることです。では、なぜ平均の差を調べるのに「分散」を使うのでしょうか。

その鍵は、データ全体のばらつきを2つの成分に分解するという発想にあります。

たとえば先ほどの肥料の実験で、12個すべてのデータを見たとき、値にばらつきがあるのは当然です。しかし、そのばらつきの「原因」は大きく2つに分けられます。

  1. 群間変動(処理間変動):肥料A・B・Cの効果が違うことによる、グループ間の平均の違いから生じるばらつき
  2. 群内変動(誤差変動):同じ肥料を使っていても生じる、個体差や環境差などの自然なばらつき

もし3つの肥料の効果が本当にすべて同じなら、群間変動は小さく(グループの平均はほぼ同じになり)、ばらつきのほとんどは群内変動で説明されるはずです。逆に、肥料の効果に差があるなら、群間変動が大きくなります。

この考え方こそが、「フィッシャーの3原則と実験計画」のまとめで触れた「全体のばらつきを処理の違い・純粋な誤差に切り分ける」という操作そのものです。


平方和の分解

ばらつきの分解は数式で正確に表現できます。全体のばらつきを表す総平方和 SSTSS_T は、次のように群間平方和 SSBSS_B と群内平方和 SSWSS_W に分解されます。

SST=SSB+SSWSS_T = SS_B + SS_W

それぞれの定義は以下のとおりです。kk はグループ数、nin_i は第 ii グループのサンプルサイズ、xˉi\bar{x}_i は第 ii グループの平均、xˉ\bar{x} は全体の平均(総平均)です。

補足

SST=SSB+SSWSS_T = SS_B + SS_W という分解は、全体のばらつきが「処理による部分」と「誤差による部分」に綺麗に分かれることを意味しています。これが分散分析の数学的な核心です。


F比:処理の効果は誤差に比べて大きいか

平方和はグループ数やサンプルサイズの影響を受けるため、そのままでは大きさを比較できません。そこで、それぞれの平方和を対応する自由度で割って平均平方(MS:Mean Square)を求めます。

ここで kk はグループ数、NN は全データ数です。

そして、この2つの比を取ったものが**F比(F統計量)**です。

F=MSBMSWF = \frac{MS_B}{MS_W}

F比の意味は直感的に理解できます。分子 MSBMS_B は「グループ間のばらつきの大きさ」、分母 MSWMS_W は「グループ内のばらつき(自然な誤差)の大きさ」です。

帰無仮説「すべてのグループの母平均は等しい(μ1=μ2==μk\mu_1 = \mu_2 = \cdots = \mu_k)」のもとで、F比は自由度 (k1,Nk)(k-1, N-k)F分布に従います。F分布の単元で学んだように、計算したF比がF分布の棄却域に入れば帰無仮説を棄却し、「少なくとも1つのグループの平均が異なる」と結論づけます。


具体例で計算してみる

3種類の肥料(A・B・C)をそれぞれ4つの区画に使い、収量(kg)を記録しました。

| 区画 | 肥料A | 肥料B | 肥料C | |:---:|:---:|:---:|:---:| | 1 | 20 | 25 | 22 | | 2 | 22 | 28 | 20 | | 3 | 18 | 26 | 24 | | 4 | 24 | 25 | 22 |

Step 1:各グループの平均と総平均を求める

Step 2:平方和を計算する

群間平方和:

SSB=4(2123)2+4(2623)2+4(2223)2=16+36+4=56SS_B = 4(21-23)^2 + 4(26-23)^2 + 4(22-23)^2 = 16 + 36 + 4 = 56

群内平方和:

SSW=[(2021)2+(2221)2+(1821)2+(2421)2]SS_W = [(20-21)^2 + (22-21)^2 + (18-21)^2 + (24-21)^2] +[(2526)2+(2826)2+(2626)2+(2526)2]+ [(25-26)^2 + (28-26)^2 + (26-26)^2 + (25-26)^2] +[(2222)2+(2022)2+(2422)2+(2222)2]+ [(22-22)^2 + (20-22)^2 + (24-22)^2 + (22-22)^2] =20+6+8=34= 20 + 6 + 8 = 34

総平方和:SST=56+34=90SS_T = 56 + 34 = 90(検算OK)

Step 3:F比を求める

Step 4:判定する

自由度 (2,9)(2, 9) のF分布で、有意水準5%の臨界値は約4.26です。F7.41>4.26F \approx 7.41 > 4.26 なので、帰無仮説を棄却します。帰無仮説は「すべての母平均が等しい」であるため、それを棄却すると「すべてが等しいとは言えない=少なくとも1つの肥料の効果が異なる」という結論になります。


分散分析の結果をまとめる:分散分析表

分散分析の結果は、慣例として**分散分析表(ANOVA table)**にまとめます。

| 要因 | 平方和(SS) | 自由度(df) | 平均平方(MS) | F比 | |:---:|:---:|:---:|:---:|:---:| | 群間(処理) | 56 | 2 | 28 | 7.41 | | 群内(誤差) | 34 | 9 | 3.78 | — | | 合計 | 90 | 11 | — | — |

この表を見ることで、全体のばらつきのうちどれだけが処理によるもので、どれだけが誤差によるものかが一目で分かります。平方和(56+34=9056 + 34 = 90)だけでなく、自由度も「群間(2) + 群内(9) = 合計(11)」と綺麗に足し算で分解されています(合計の自由度11は、全データ数12から1を引いた値です)。


よくある誤解

注意
  • 誤解1:分散分析で「どのグループ間に差があるか」が分かる — 分散分析のF検定は「少なくとも1つの平均が異なる」ことしか判定できません。AとBに差があるのか、BとCに差があるのかを特定するには、追加の分析(テューキー法やボンフェローニ補正などの多重比較法)が必要です。
  • 誤解2:F検定が有意なら「大きな効果がある」と言える — F検定は「効果があるかないか(有無)」を判定するものであり、F比の大きさが効果の実用的な大きさ(効果量)を直接示すわけではありません。F比はサンプルサイズに依存するため、大規模なサンプルでは小さな差でも高いF比になります。

まとめ

分散分析(ANOVA)は、3つ以上のグループの平均を一度の検定で比較するための手法です。データの全体のばらつきを「群間変動(処理の効果)」と「群内変動(誤差)」に分解し、その比であるF比が十分に大きければ、処理に統計的に有意な効果があると判定します。

ただし、F検定で分かるのは「少なくとも1つの平均が異なる」ことだけであり、具体的にどのグループ間に差があるかを特定するには、多重比較法などの追加の手続きが必要です。また、ここで扱った一元配置ANOVAは1つの要因のみを扱いますが、「分散分析(2元配置・交互作用)」ではブロック要因や交互作用を考慮する二元配置ANOVAへと発展させます。

なお、分散分析を正しく適用するには、各グループのデータが正規分布に従うこと(正規性)、各グループの分散が等しいこと(等分散性)、各データが互いに独立であること(独立性)という3つの前提条件が必要です。