統計学 学習ノート

統計検定の4級から1級まで、出題範囲の順に記事と練習問題で学ぶ

2級-24 推測統計の基礎

適合度検定と独立性の検定

  • 適合度検定
  • 独立性の検定

はじめに

「このサイコロ、なんだか6ばかり出ない?」

友達とすごろくをしていて、こう疑ったことはありませんか? 例えば、120回振って1の目が14回、6の目が21回だったとします。1から6まで、きれいに20回ずつにはなりません。でも、ぴったり同じにならないのは当たり前です。どこまでのズレなら許せるのでしょうか?

前回の記事では、「買った・買わない」のような2択の比率を比べました。でも、サイコロの目は6種類あります。部活の種類と朝食の習慣のように、3種類以上の質的変数の関連を調べたいこともありますよね。比率の検定を何度も繰り返すのは大変です。

実は、こうした問題は、「予想した度数と実際の度数のズレ」を1つの数にまとめるだけで解けます。

そこで登場するのが、今回の主役 カイ二乗統計量 です。この物差しを使う検定は、大きく2つあります。

今回の記事では、データが理論どおりの分布に合っているかを調べる 適合度検定 と、2つの質的変数が関連しているかを調べる 独立性の検定 について解説します。

カイ二乗統計量:予想と現実のズレを1つの数に

はじめに、2つの検定に共通するカイ二乗統計量について解説します。

結論を一言で言うと、カイ二乗統計量は、予想と現実の答え合わせの点数です。カテゴリごとに「実際の度数」と「予想した度数」を比べて、ズレを合計します。

χ2=∑i=1k(Oi−Ei)2Ei\chi^2 = \sum_{i=1}^{k} \frac{(O_i - E_i)^2}{E_i}

OiO_i はカテゴリ ii の 観測度数(observed)、EiE_i は 期待度数(expected)、kk はカテゴリの数です。期待度数とは、帰無仮説が正しいとしたときに予想される度数のことです。「散らばりなどの指標」の記事で登場した、一様な頻度からのずれを表すカイ二乗値は、これの仲間です。

式の中身を、順に見ていきましょう。

【式の読み方】

  1. Oi−EiO_i - E_i: 予想とのズレ
  2. 2乗する: プラスとマイナスのズレが打ち消し合わないようにする
  3. EiE_i で割る: 予想の大きさに対して、ズレがどれだけ大きいかを見る
  4. 合計する: すべてのカテゴリのズレを1つの数にまとめる

なぜ EiE_i で割るのでしょうか? 例えば、10人のズレは、予想が20人のときには大事件ですが、予想が1万人のときには誤差です。お小遣いが1,000円増えるのと、年収が1,000円増えるのとでは、重みが違うのと同じです。

具体的に見てみましょう。コインを100回投げて表が60回出たとします。公平なコインなら、期待度数は表も裏も50回です。

χ2=(60−50)250+(40−50)250=2+2=4\chi^2 = \frac{(60-50)^2}{50} + \frac{(40-50)^2}{50} = 2 + 2 = 4

ズレがまったくなければ0で、ズレが大きいほど値は大きくなります。そのため、棄却域は必ず上側だけに置きます。nn が大きいとき、H0H_0 のもとでこの値は近似的にカイ二乗分布に従います。

ここで、1つ注意があります。この近似が使えるのは、度数が十分に大きいときです。目安は、すべての期待度数が5以上であることです。5未満のカテゴリがあれば、隣のカテゴリと1つにまとめます。

試験のポイント:計算に使うのは比率ではなく度数です。「30%」のような値は、人数や回数に直してから式に入れます。

以上が、カイ二乗統計量についての解説です。

適合度検定:理論どおりの分布か

次に、適合度検定について説明します。

適合度検定 は、観測された度数の分布が、理論の分布に合っているかを調べる検定です。服の試着に例えると、理論という服がデータという体に合っているかを確かめる作業です。

H0H_0 は「データは理論の分布に従う」です。検定統計量は先ほどの χ2\chi^2 で、自由度はカテゴリの数から1を引いた k−1k-1 です。

なぜ1を引くのでしょうか? 度数の合計は決まっているので、k−1k-1 個のカテゴリの度数が決まれば、最後の1つは自動的に決まるからです。自由に動けるのは k−1k-1 個だけなのです。

例題:サイコロの検定

サイコロを120回振ると、次の結果でした。公平なサイコロと言えるかを、有意水準5%で検定しましょう。χ0.052(5)=11.07\chi^2_{0.05}(5) = 11.07 です。

目123456
観測度数142519172421

【解き方】

  1. 仮説を立てる: H0H_0 は「どの目も確率 1/61/6」、H1H_1 は「H0H_0 ではない」
  2. 期待度数を求める: 120 ÷ 6 = 20(どの目も同じ)
  3. ズレの2乗を合計する: 36 + 25 + 1 + 9 + 16 + 1 = 88
  4. 検定統計量を計算する: χ2=88÷20=4.4\chi^2 = 88 \div 20 = 4.4
  5. 自由度は 6 − 1 = 5。4.4 < 11.07 なので、H0H_0 を棄却しない

答えは「有意水準5%で、公平でないとは言えない」です。冒頭の疑いは、たまたまの範囲でした。

棄却しないことは、公平だと証明したことにはなりません。あくまで「おかしいという証拠が足りない」という結論です。この点は、これまでの検定と同じです。

例題:ガチャの排出率の検定

せっかくなので、比率が等しくない例も見てみましょう。ノーマル70%、レア25%、スーパーレア5%と公表されているガチャを200回引くと、それぞれ155回、33回、12回でした。公表どおりかを、有意水準5%で検定します。χ0.052(2)=5.99\chi^2_{0.05}(2) = 5.99 です。

【解き方】

  1. 期待度数を求める: 200 × 0.70 = 140、200 × 0.25 = 50、200 × 0.05 = 10
  2. 検定統計量を計算する: χ2=152÷140+172÷50+22÷10=1.61+5.78+0.40=7.79\chi^2 = 15^2 \div 140 + 17^2 \div 50 + 2^2 \div 10 = 1.61 + 5.78 + 0.40 = 7.79
  3. 自由度は 3 − 1 = 2。7.79 > 5.99 なので、H0H_0 を棄却する

答えは「有意水準5%で、公表どおりとは言えない」です。3つの項を見比べると、ズレの主な原因はレアの少なさだと分かります。

補足(ここは読み飛ばしてOK): 理論の分布の母数をデータから推定したときは、推定した母数の数 pp の分だけ自由度が減り、k−1−pk-1-p になります。例えば、平均をデータから推定したポアソン分布に6カテゴリで当てはめるなら、自由度は 6 − 1 − 1 = 4 です。

以上が、適合度検定についての説明です。

独立性の検定:2つの変数に関連はあるか

続いて、独立性の検定について解説します。

独立性の検定 は、クロス表の2つの質的変数が独立かどうかを調べる検定です。2元クロス表の記事では、表を眺めて関連を探しました。今回は、その関連がたまたまなのかを判定します。

適合度検定との違いは、期待度数の作り方です。今回は理論の分布がないので、「2つが独立なら」と考えて、表の中から期待度数を作ります。確率の記事で学んだように、独立なら P(A∩B)=P(A)P(B)P(A \cap B) = P(A)P(B) が成り立つのでした。これを度数に直すと、次の式になります。

Eij=(第 i 行の合計)×(第 j 列の合計)総数E_{ij} = \frac{(\text{第}\,i\,\text{行の合計}) \times (\text{第}\,j\,\text{列の合計})}{\text{総数}}

例えば、全体の70%が朝食を毎日食べているなら、独立であれば、どの部活でも70%が食べているはずです。運動部が80人なら、56人が期待度数です。「全体の割合を、どのグループにも同じように配る」というイメージです。

検定統計量は、すべてのマスについてズレを合計した χ2\chi^2 で、rr 行 cc 列の表の自由度は次のようになります。

自由度=(r−1)(c−1)\text{自由度} = (r-1)(c-1)

行の合計と列の合計が決まっていると、最後の行と最後の列は自動的に決まります。自由に動けるのは (r−1)(c−1)(r-1)(c-1) マスだけなのです。

例題:部活と朝食の関連

200人の高校生を調べると、次の表のようになりました。部活の種類と朝食の習慣は独立かを、有意水準5%で検定しましょう。χ0.052(2)=5.99\chi^2_{0.05}(2) = 5.99 です。

運動部文化部帰宅部計
毎日食べる644234140
毎日ではない16182660
計806060200

【解き方】

  1. 仮説を立てる: H0H_0 は「部活と朝食は独立」、H1H_1 は「独立ではない」
  2. 期待度数を求める: 毎日食べるの行は 140 × 80 ÷ 200 = 56、42、42。毎日ではないの行は 24、18、18
  3. 検定統計量を計算する: χ2=82÷56+0+82÷42+82÷24+0+82÷18=8.89\chi^2 = 8^2 \div 56 + 0 + 8^2 \div 42 + 8^2 \div 24 + 0 + 8^2 \div 18 = 8.89
  4. 自由度は (2 − 1) × (3 − 1) = 2。8.89 > 5.99 なので、H0H_0 を棄却する

答えは「有意水準5%で、部活と朝食には関連がある」です。

ただし、この結果から「運動部に入れば朝食を食べるようになる」とは言えません。検定が示すのは関連の有無だけで、原因と結果の向きは分からないのです。

試験のポイント:独立性の検定の自由度は (r−1)(c−1)(r-1)(c-1)、適合度検定の自由度は k−1k-1 です。「マスの数 − 1」としないように注意します。

以上が、独立性の検定についての解説です。

2×2の表と比率の差の検定

最後に、最もよく出る2×2の表を見ていきましょう。

2行2列のクロス表では、自由度は1です。さらに、χ2\chi^2 を一度に計算できる便利な式があります。各マスの度数を a,b,c,da, b, c, d、総数を NN とすると、次のようになります。

χ2=N(ad−bc)2(a+b)(c+d)(a+c)(b+d)\chi^2 = \frac{N(ad - bc)^2}{(a+b)(c+d)(a+c)(b+d)}

分子の ad−bcad - bc は、たすき掛けの差です。2つの変数が独立なら、この差は0に近づきます。

具体的に見てみましょう。前回の記事の広告の例を、クロス表に直します。

購入したしなかった計
広告A60140200
広告B66234300
計126374500

たすき掛けの差は 60 × 234 − 140 × 66 = 4,800 です。これを式に入れると、次のようになります。

χ2=500×48002200×300×126×374=4.07\chi^2 = \frac{500 \times 4800^2}{200 \times 300 \times 126 \times 374} = 4.07

χ0.052(1)=3.84\chi^2_{0.05}(1) = 3.84 より大きいので棄却します。

ここがポイントです。前回の比率の差の検定では、z=2.02z = 2.02 でした。この2乗はほぼ4.07で、χ2\chi^2 と一致します。棄却域の境目も 1.962=3.841.96^2 = 3.84 です。つまり、2×2の表の独立性の検定と、両側の比率の差の検定は、同じものを別の角度から見ているのです。同じ山を東から登るか、西から登るかの違いだと考えてください。

補足(ここは読み飛ばしてOK): 度数が少ないときは、ズレを少し小さめに見積もる イェーツの補正 を使うことがあります。分子を N(∣ad−bc∣−N/2)2N(|ad-bc| - N/2)^2 とする方法です。この例では χ2\chi^2 が3.66になり、境目を下回ります。ソフトの出力を読むときは、補正の有無を確かめましょう。

以上が、2×2の表についての説明です。

細かい計算が分からなかったとしても問題ありません。ここでは、「期待度数を作って、ズレを χ2\chi^2 で測る」という点だけ押さえておきましょう。

今回のまとめ

それでは、今回の内容を振り返ります。

今回はカイ二乗統計量を使う2つの検定を紹介しました。どちらも「予想と現実の答え合わせ」で、違うのは予想の作り方だけです。理論から作れば適合度検定、表の合計から作れば独立性の検定になります。

今回のポイントを振り返りましょう。

振り返り

  • カイ二乗統計量は、期待度数と観測度数のズレを1つにまとめた数。大きいほど H0H_0 に不利で、棄却域は上側だけ。
  • 適合度検定は、理論から期待度数を作る。自由度は k−1k-1。
  • 独立性の検定は、行と列の合計から期待度数を作る。自由度は (r−1)(c−1)(r-1)(c-1)。
  • 期待度数は5以上が目安。計算には比率ではなく度数を使う。
  • 2×2の表の χ2\chi^2 は、比率の差の検定の zz の2乗に等しい。

キーワードのおさらい

  • カイ二乗統計量: 観測度数と期待度数のズレを合計した検定統計量
  • 観測度数: 実際に観測された度数
  • 期待度数: 帰無仮説が正しいとしたときに予想される度数
  • 適合度検定: 度数の分布が理論の分布に合っているかを調べる検定
  • 独立性の検定: クロス表の2つの変数が独立かを調べる検定

さて、ここまでの検定は「違いがあるか」「関連があるか」を調べるものでした。でも、家賃を決めるのは広さだけではありません。駅からの距離や築年数など、複数の要因を同時に考えたいときはどうすればよいでしょうか?

次回は、単回帰を複数の変数に広げる「回帰分析 — 重回帰モデル」について紹介します。

それでは、次の記事へ進んでいきましょう。

練習問題5問開いて挑戦する
問1. 4種類のカードが同じ確率で出るはずのくじを100回引くと、度数は 30, 20, 28, 22 だった。カイ二乗統計量として正しいものはどれか。
問2. 4行3列のクロス表で独立性の検定を行うとき、自由度として正しいものはどれか。
問3. 総数150のクロス表で、ある行の合計が60、ある列の合計が30だった。2つの変数が独立だとしたとき、そのマスの期待度数として正しいものはどれか。
問4. 2×2の表の度数が a=30a=30、b=20b=20、c=20c=20、d=30d=30 だった。χ0.052(1)=3.84\chi^2_{0.05}(1) = 3.84 のとき、独立性の検定の結果として正しいものはどれか。
問5. 喫煙の有無と、ある症状の有無のクロス表で独立性の検定を行い、有意水準5%で棄却された。結果の解釈として、最も適切なものはどれか。