Skip to Main Content

★手計算とRで学ぶ統計学: 独立性の検定

「なぜ統計学が必要か」という問いをひもとき,実践を通じて読者の方と統計学の心理的距離を縮めるガイドです。

基本・独立性の検定

ここでは,データのカテゴリ間に関係があるかどうかを検定する独立性の検定について,実際のデータを使って流れを確認しましょう。

(データ概要)
関東,関西在住の100人にエスカレーターの右側,左側のどちらに立つかを聞いたところ,以下のような回答が得られました
(※1)
このデータから,エスカレーターの左右と地域の間に関係があるかを検討しましょう。
\begin{array}{ccc}
\qquad & 左側 & 右側  \\ 
\hline
関東 & 85 & 15   \\ 
\hline
関西 & 73 & 27 \\
\end{array}

①仮説を立てる
今回は
帰無仮説\(H_{0}\): エスカレーターで左右どちらに立つかと関東/関西の区分は独立である (= 関係がない)
対立仮説\(H_{1}\): エスカレーターで左右どちらに立つかと関東/関西の区分は独立でない (= 関係がある)
という仮説を立てます。

②検定統計量を選択する
今回の事例ではカイ二乗統計量 (カイ二乗値) \(\chi^2\) を使用します。また,帰無仮説の棄却 / 保留の判断には自由度\((行数-1)(列数-1) = (r-1)(c-1) = (2-1)(2-1) = 1\qquad (ただしkはカテゴリ数) \) のカイ二乗分布を使用します。

③有意水準\(\alpha\) (第一種の過誤が生じることをどこまで許容するか) を定める
\(\alpha\) = 0.05と定めることが一般的です。研究の目的や分野によっては異なる有意水準 (\(\alpha\) = 0.1,\(\alpha\) = 0.01など) を定めることもあります。

④適切な検定統計量を求める
カイ二乗値を求めるため,まずはエスカレーターの左右と関東 / 関西が独立である場合の値 (期待度数) を考えます。
期待度数を求めるためには,まず行 (地域) と列 (左右) の和,そして全体のサンプルサイズをそれぞれ求めます。手計算で行う場合は以下の表のようにまとめるとわかりやすいでしょう。
\begin{array}{c|c|c|c}
\qquad & 左側 & 右側 & 合計  \\ 
\hline
関東 & 85 & 15 & 100  \\ 
\hline
関西 & 73 & 27 & 100 \\
\hline
合計 & 158 & 42 & 200 \\
\end{array}

次に,列ごとの和と行ごとの和の積を全体のサンプルサイズで割り,エスカレーターの左右と地域が独立である,つまり帰無仮説が真である場合に期待される度数 (期待度数) を求めます。

\begin{array}{c|c|c|c}
\qquad & 左側 & 右側 & 合計  \\ 
\hline
関東 & 79 \left(\frac{158 \times 100}{200}\right) & 21 \left(\frac{42 \times 100}{200}\right) & 100  \\ 
\hline
関西 & 79 \left(\frac{158 \times 100}{200}\right) & 21 \left(\frac{42 \times 100}{200}\right) & 100 \\
\hline
合計 & 158 & 42 & 200 \\
\end{array}

期待度数が求められたら,期待度数と実測値の差の二乗を理論値で割ったものを全て足し合わせ,カイ二乗値を求めます。計算の原理や手順とは適合度の検定とそこまで大きく違いません。
\begin{array}
c  \chi^2 = \sum_{i=1}^p \sum_{j=1}^q  \frac{1}{i行j列のデータの期待度数}(i行j列のデータの観測度数-i行j列のデータの期待度数)^2 \\
 = \sum_{i=1}^2 \sum_{j=1}^2  \frac{1}{np_{ij}}(X_{ij}-np_{ij})^2 \\
= \frac{1}{79}(79-85)^2 + \frac{1}{21}(21 - 15)^2 +\frac{1}{79}(79-73)^2 +\frac{1}{21}(21 - 27)^2  \\
= \frac{1}{79 \times 36} + \frac{1}{21\times 36} +\frac{1}{79\times 36} +\frac{1}{21\times 36}  \\ \\
\fallingdotseq 4.334 \\
X_{i}: i番目のカテゴリに属する個数 \\
np_{i}: i番目のカテゴリに属するデータの理論値 \\
n: 全体のサンプルサイズ \\
p_{i}: それぞれのカテゴリで仮定されている出現比率
\end{array}

⑤データの自由度と有意水準をもとに棄却域 (データから求めたカイ二乗値がこの中に含まれれば帰無仮説を棄却する) を定める
カイ二乗分布表の自由度1,有意水準0.05の値を見ると,\(\chi^2_{0.05}(1) = 3.84 \) であることがわかります。よって,求めたカイ二乗値が\(3.84  <x < \infty \) の範囲に含まれていれば帰無仮説を棄却,含まれていなければ帰無仮説についての判断を保留することにします。

⑥カイ二乗値と棄却域を比較し,帰無仮説を棄却するかどうか決める (手計算の場合のみ)
データから求めたカイ二乗値はおよそ4.334であり,棄却域の外側にあります。
よって,今回は帰無仮説を棄却し,「エスカレーターで左右どちらに立つかと関東/関西の区分には関係がある」と結論づけます。

(※1) このような問題設定をしておいて言うなよ,という話でもありますが,片側をあける乗り方は事故防止やエスカレーターの寿命などの観点から好ましくないそうです。

イェーツの補正

ここまで独立性検定の手順をステップごとに確認してきましたが,実はRでカイ2乗検定をした時の結果と今回の結果は一致しません。
実は,\(2 \times 2\) の集計表に対してカイ2乗検定を行うと第一種の過誤を犯しやすいことが知られています。そのため,イェーツの補正を行うことで第一種の過誤を犯しにくくすることが一般的です (※1)。
ただし,\(2 \times 2\)以外の集計表の場合はイェーツの補正は不要です。

観測度数と期待度数の差の絶対値から0.5を引いた値を用いることで,イェーツの補正をかけたカイ二乗値を求めることができます。先ほどのデータを使って確認してみましょう。
\begin{array}
c  corrected\;\chi^2 &= \sum_{i=1}^p \sum_{j=1}^q  \frac{1}{i行j列のデータの期待度数}(i行j列のデータの観測度数-i行j列のデータの期待度数の絶対値 - 0.5)^2 \\
 &= \sum_{i=1}^2 \sum_{j=1}^2  \frac{1}{np_{ij}}(|X_{ij}-np_{ij}| - 0.5)^2 \\
&= \frac{1}{79}(|79-85| - 0.5)^2 + \frac{1}{21}(|21 - 15| -0.5)^2 + \frac{1}{79}(|79-85| - 0.5)^2 + \frac{1}{21}(|21 - 15| -0.5)^2  \\
&= \frac{1}{79}5.5^2 + \frac{1}{21}5.5^2 +\frac{1}{79}5.5^2 + \frac{1}{21}5.5^2 \\
&= \frac{1}{79 \times 30.25} + \frac{1}{21\times 30.25} +\frac{1}{79\times 30.25} +\frac{1}{21\times 30.25}  \\ \\
&\fallingdotseq 3.647 \\
\end{array}

今回のデータにおける棄却域は\(\chi^2_{0.05}(1) = 3.84 \) ,イェーツの補正をかけたカイ二乗値はおよそ3.647であり,カイ二乗値は棄却域の内側にあります。
よって,今回は帰無仮説に関する判断を保留し,「エスカレーターで左右どちらに立つかと関東/関西の区分には関係があるとはいえない」と結論づけます。

差の絶対値から0.5を引く,という単純な工程ですが,帰無仮説に関する判断が覆ることもあります。

(※1) Rでは\(2 \times 2\)の集計表に対してカイ二乗検定を行うときはデフォルトでイェーツの補正がかかるようになっています。しかし,ExcelのCHISQ.TESTという関数はイェーツの補正を行わないのがデフォルトになっています (補正をかけるかどうかは設定できないようです)。