Ch.5 「適合度検定」の章末問題の解答例 〜基礎統計学Ⅲ 自然科学の統計学(東京大学出版会)〜

当記事は「基礎統計学Ⅲ 自然科学の統計学(東京大学出版会)」の読解サポートにあたってChapter.$5$の「適合度検定」の章末問題の解説について行います。
基本的には書籍の購入者向けの解答例・解説なので、まだ入手されていない方は下記より入手をご検討ください。また、解説はあくまでサイト運営者が独自に作成したものであり、書籍の公式ページではないことにご注意ください。

章末の演習問題について

問題5.1の解答例

それぞれの分類の型に対応する三項分布の係数$\displaystyle \frac{9!}{a!b!c!}$と、型を与える観測値の個数$n_{(a,b,c)}$を求め、それぞれの積の和が$3261$に一致することを示せば良い。また$\chi^2$値は$\chi_{(a,b,c)}^2$のように表記することとする。以下それぞれの分類の型に対し、計算を行う。
・$(8,1,0)$
$$
\begin{align}
\frac{9!}{8!1!0!} &= 9 \\
n_{8,1,0} &= 3 \\
\chi_{(8,1,0)} &= \frac{(8-3)^2}{3} + \frac{(1-3)^2}{3} + \frac{(0-3)^2}{3} \\
&= \frac{38}{3}
\end{align}
$$

・$(7,2,0)$
$$
\begin{align}
\frac{9!}{7!2!0!} &= \frac{9 \cdot 8}{2} \\
&= 36 \\
n_{8,1,0} &= 3! \\
&= 6 \\
\chi_{(7,2,0)} &= \frac{(7-3)^2}{3} + \frac{(2-3)^2}{3} + \frac{(0-3)^2}{3} \\
&= \frac{26}{3}
\end{align}
$$

・$(7,1,1)$
$$
\begin{align}
\frac{9!}{7!1!1!} &= \frac{9 \cdot 8}{1} \\
&= 72 \\
n_{7,1,1} &= 3 \\
\chi_{(7,1,1)} &= \frac{(7-3)^2}{3} + \frac{(1-3)^2}{3} + \frac{(1-3)^2}{3} \\
&= \frac{24}{3} \\
&= 8
\end{align}
$$

・$(6,3,0)$
$$
\begin{align}
\frac{9!}{6!3!0!} &= \frac{9 \cdot 8 \cdot 7}{3 \cdot 2} \\
&= 3 \cdot 4 \cdot 7 \\
&= 84 \\
n_{6,3,0} &= 6 \\
\chi_{(6,3,0)} &= \frac{(6-3)^2}{3} + \frac{(3-3)^2}{3} + \frac{(0-3)^2}{3} \\
&= \frac{18}{3} \\
&= 6
\end{align}
$$

・$(6,2,1)$
$$
\begin{align}
\frac{9!}{6!2!1!} &= \frac{9 \cdot 8 \cdot 7}{2} \\
&= 9 \cdot 4 \cdot 7 \\
&= 252 \\
n_{6,3,0} &= 6 \\
\chi_{(6,2,1)} &= \frac{(6-3)^2}{3} + \frac{(2-3)^2}{3} + \frac{(1-3)^2}{3} \\
&= \frac{14}{3}
\end{align}
$$

・$(5,4,0)$
$$
\begin{align}
\frac{9!}{5!4!0!} &= \frac{9 \cdot 8 \cdot 7 \cdot 6}{4 \cdot 3 \cdot 2} \\
&= 9 \cdot 2 \cdot 7 \\
&= 126 \\
n_{5,4,0} &= 6 \\
\chi_{(6,2,1)} &= \frac{(5-3)^2}{3} + \frac{(4-3)^2}{3} + \frac{(0-3)^2}{3} \\
&= \frac{14}{3}
\end{align}
$$
上記より、$\displaystyle \chi^2 \geq \frac{14}{3}$となる確率の分子は下記のように計算できる。
$$
\begin{align}
1 \cdot 3 &+ 9 \cdot 6 + 36 \cdot 6 + 72 \cdot 3 + 84 \cdot 6 \\
&+ 252 \cdot 6 + 126 \cdot 6 = 3261
\end{align}
$$
上記より、$\displaystyle \chi^2 \geq \frac{14}{3}$となる確率は、$\displaystyle \chi^2 \geq \frac{3261}{3^9}=0.166$となる。

問題5.2の解答例

$\chi^2$値は下記の計算を実行することで得ることができる。

import numpy as np

observed = np.array([60., 208., 655., 1826., 3650., 5909., 7512., 7737., 6063., 3641., 1820., 683., 188., 48.])
prob = np.array([0.00135, 0.00486, 0.01654, 0.04406, 0.09185, 0.14988, 0.19146, 0.19146, 0.14988, 0.09185, 0.04406, 0.01654, 0.00486, 0.00135])
estimate = prob*40000

print(estimate)
print((observed-estimate)**2/estimate)
print(np.sum((observed-estimate)**2/estimate))

・実行結果

> print(estimate)
[   54.    194.4   661.6  1762.4  3674.   5995.2  7658.4  7658.4  5995.2
  3674.   1762.4   661.6   194.4    54. ]
> print((observed-estimate)**2/estimate)
[ 0.66666667  0.95144033  0.06584039  2.29514299  0.15677735  1.23939819
  2.79862112  0.80669069  0.7667534   0.29640719  1.88252383  0.69220073
  0.21069959  0.66666667]
> print(np.sum((observed-estimate)**2/estimate))
13.4958291239

上記より$\chi^2 \simeq 13.5$であり、$\chi^2 < 22.36… = \chi^2_{\alpha=0.05}(13)$より帰無仮説は棄却できない。

問題5.3の解答例

$\chi^2$分布において上側確率が$100\alpha$%となるパーセント点に対応する$\chi^2$の値を$\chi^2_{\alpha}$とする。(5.13)式を元に$\chi^2$の値の計算を行う。
$$
\begin{align}
\chi^2 = \sum_{i}^{a} \sum_{j}^{b} \frac{(f_{ij}-f_{i \cdot}f_{\cdot j}/n)^2}{f_{i \cdot}f_{\cdot j}/n}
\end{align}
$$
以下、表の数字を元に上記を用いて計算する。
$$
\begin{align}
\chi^2 &= \sum_{i}^{a} \sum_{j}^{b} \frac{(f_{ij}-f_{i \cdot}f_{\cdot j}/n)^2}{f_{i \cdot}f_{\cdot j}/n} \\
&= \frac{(7142-17884 \cdot 7232/18101)^2}{17884 \cdot 7232/18101} + \frac{(3021-17884 \cdot 3081/18101)^2}{17884 \cdot 3081/18101} + \frac{(1841-17884 \cdot 1879/18101)^2}{17884 \cdot 1879/18101} \\
&+ \frac{(5880-17884 \cdot 5909/18101)^2}{17884 \cdot 5909/18101} + \frac{(90-217 \cdot 7232/18101)^2}{217 \cdot 7232/18101} + \frac{(60-217 \cdot 3081/18101)^2}{217 \cdot 3081/18101} \\
&+ \frac{(38-217 \cdot 1879/18101)^2}{217 \cdot 1879/18101} + \frac{(29-217 \cdot 5909/18101)^2}{217 \cdot 5909/18101} \\
&= 50.4733…
\end{align}
$$
上記が自由度$(2-1)(4-1)=3$の$\chi^2$分布に従うため、有意水準5%で片側検定するにあたっては$\chi^2_{\alpha=0.05}(3)=7.815$と比較すればよい。
このとき、$\chi^2=50.4733…>7.815=\chi^2_{\alpha=0.05}(3)$のため、独立を仮定した帰無仮説は棄却される。(独立性が成立しないと考える方が妥当である)

問題5.4の解答例

i)
試合数$z$の確率分布$p(z)$は$z-1$回目までに勝利チームが$3$回勝利する確率と考えることができる。ここで「勝利チームが$z-1$回目までに$3$回勝利する確率」としているので、$z$回目の分岐は生じない。(両チームの勝率が同じため分岐が生じると考えて、チームの重複を考えるという方法でも良い)
$p(z)$は下記のように計算できる。
$$
\begin{align}
p(z) &= {}_{z-1} C_{3} \left( \frac{1}{2} \right)^3 \left( 1 – \frac{1}{2} \right)^{z-1-3} \\
&= {}_{z-1} C_{3} \left( \frac{1}{2} \right)^3 \left( \frac{1}{2} \right)^{z-4} \\
&= {}_{z-1} C_{3} \left( \frac{1}{2} \right)^{z-1} \\
&= {}_{z-1} C_{3} 2^{-z+1}
\end{align}
$$

ⅱ)
$\chi^2$分布において上側確率が$100\alpha$%となるパーセント点に対応する$\chi^2$の値を$\chi^2_{\alpha}$とする。
$$
\begin{align}
\chi^2 = \sum \frac{(O-E)^2}{E}
\end{align}
$$
観測度数を$O$、理論度数を$E$とした際に、上記で得られる$\chi^2$の値を元に$\chi^2$検定を行えばよい。理論度数は「試行回数×理論確率」で計算できるので、この問題において$\chi^2$は下記のように計算できる。
$$
\begin{align}
\chi^2 &= \sum \frac{(O-E)^2}{E} \\
&= \frac{(5-42p(z=4))^2}{42p(z=4)} + \frac{(8-42p(z=5))^2}{42p(z=5)} + \frac{(15-42p(z=6))^2}{42p(z=6)} + \frac{(14-42p(z=7))^2}{42p(z=7)} \\
&= \frac{(5-42{}_{4-1} C_{3} 2^{-4+1})^2}{42{}_{4-1} C_{3} 2^{-4+1}} + \frac{(8-42{}_{5-1} C_{3} 2^{-5+1})^2}{42{}_{5-1} C_{3} 2^{-5+1}} + \frac{(15-42{}_{6-1} C_{3} 2^{-6+1})^2}{42{}_{6-1} C_{3} 2^{-6+1}} + \frac{(14-42{}_{7-1} C_{3} 2^{-7+1})^2}{42{}_{7-1} C_{3} 2^{-7+1}} \\
&= \frac{(5-42{}_{3} C_{3} 2^{-3})^2}{42{}_{3} C_{3} 2^{-3}} + \frac{(8-42{}_{4} C_{3} 2^{-4})^2}{42{}_{4} C_{3} 2^{-4}} + \frac{(15-42{}_{5} C_{3} 2^{-5})^2}{42{}_{5} C_{3} 2^{-5}} + \frac{(14-42{}_{6} C_{3} 2^{-6})^2}{42{}_{6} C_{3} 2^{-6}} \\
&= \frac{(5-42 \cdot 2^{-3})^2}{42 \cdot 2^{-3}} + \frac{(8-42 \cdot 4 \cdot 2^{-4})^2}{42 \cdot 4 \cdot 2^{-4}} + \frac{(15-42 \cdot 10 \cdot 2^{-5})^2}{42 \cdot 10 \cdot 2^{-5}} + \frac{(14-42 \cdot 20 \cdot 2^{-6})^2}{42 \cdot 20 \cdot 2^{-6}} \\
&= 0.93333…
\end{align}
$$
上記が自由度$4-1=3$の$\chi^2$分布に従うため、有意水準5%で片側検定するにあたっては$\chi^2_{\alpha=0.05}(3)=7.815$と比較すればよい。
このとき、$\chi^2=0.93333…<7.815=\chi^2_{\alpha=0.05}(3)$のため、帰無仮説は棄却されない。(得られた結果は妥当と考える方が良い)

問題5.5の解答例

i)
平均$\bar{x}$、不偏分散$s^2$はそれぞれ下記のように求めることができる。
$$
\begin{align}
\bar{x} &= \frac{1}{228}(1 \cdot 24 + 2 \cdot 16 + 3 \cdot 8 + 4 \cdot 3 + 5 \cdot 2) \\
&= 0.44736… \\
s^2 &= \frac{1}{227} \left( 175(0-\bar{x})^2 + 24(1-\bar{x})^2 + 16(2-\bar{x})^2 + 8(3-\bar{x})^2 + 3(4-\bar{x})^2 + 2(5-\bar{x})^2 \right) \\
&= 0.93554…
\end{align}
$$

問題5.6の解答例

下記を実行することで$\theta$の推定を行うことができる。

import numpy as np

K = 100.
y = np.array([[0., 15., 15., 15., 13., 16.], [11., 0., 14., 15., 14., 17.], [11., 12., 0., 14., 17., 13.], [11., 11., 12., 0., 13., 19], [13., 12., 9., 13., 0., 17.], [10., 9., 13., 7., 9., 0.]])
theta = np.repeat(100., 6)/6.

for epoch in range(10):
    for i in range(6):
        r_theta = 0
        for j in range(6):
            if i != j:
                r_theta += (y[i,j]+y[j,i])/(theta[i]+theta[j])
        theta[i] = np.sum(y[i,:])/r_theta
    theta = K*theta/np.sum(theta)

print(theta)

・実行結果

[ 20.63301132  19.08005757  17.19619821  16.75537645  15.90772652
  10.42762994]

また、$\chi^2$検定は上記で計算を行なったthetaを用いて、下記を実行することで行うことができる。

from scipy import stats

chi2 = 0
expected_y = np.zeros([6,6])
for i in range(6):
    for j in range(6):
        if i != j:
            expected_y[i,j] = theta[i]*(y[i,j]+y[j,i])/(theta[i]+theta[j])
            chi2 += (y[i,j]-expected_y[i,j])**2 / expected_y[i,j]

print("・expected_y")
print(expected_y)
print("・chi^2 test of goodness of fit")
if chi2 > stats.chi2.ppf(1.-0.05,10):
    print("chi^2: {:.2f}, P_value: {:.2f}, reject H_0 and expected_y is not good.".format(chi2,stats.chi2.cdf(chi2,10)))
else:
    print("chi^2: {:.2f}, P_value: {:.2f}, accept H_0 and expected_y seems to be good.".format(chi2,stats.chi2.cdf(chi2,10)))

・実行結果

・expected_y
[[  0.          13.50835655  14.18106011  14.34825962  14.68110186
   17.27132064]
 [ 12.49164345   0.          13.67510197  13.84332325  14.17870579
   16.81194085]
 [ 11.81893989  12.32489803   0.          13.1687899   13.50598629
   16.18534372]
 [ 11.65174038  12.15667675  12.8312101    0.          13.33736688
   16.02618127]
 [ 11.31889814  11.82129421  12.49401371  12.66263312   0.          15.70515631]
 [  8.72867936   9.18805915   9.81465628   9.97381873  10.29484369   0.        ]]
・chi^2 test of goodness of fit
chi^2: 6.84, P_value: 0.26, accept H_0 and expected_y seems to be good.

問題5.7の解答例

$\chi^2$分布において上側確率が$100\alpha$%となるパーセント点に対応する$\chi^2$の値を$\chi^2_{\alpha}$とする。
一様分布を想定した際の$10^i$桁までに対応する$\chi^2$適合度統計量を$\chi_i^2$とおき、$\chi_4^2$から$\chi_6^2$までを計算する。($\chi_7^2$〜$\chi_9^2$の値は書籍に記載があり、途中式がわかれば十分と思われるので、$\chi_7^2$〜$\chi_9^2$は取り扱わないものとする。)
$$
\begin{align}
\chi_4^2 &= \frac{(968-1000)^2}{1000} + \frac{(1026-1000)^2}{1000} + \frac{(1021-1000)^2}{1000} + \frac{(974-1000)^2}{1000} + \frac{(1012-1000)^2}{1000} \\
&+ \frac{(1046-1000)^2}{1000} + \frac{(1021-1000)^2}{1000} + \frac{(970-1000)^2}{1000} + \frac{(948-1000)^2}{1000} + \frac{(1014-1000)^2}{1000} \\
&= 9.318 \\
\chi_5^2 &= \frac{(9999-10000)^2}{10000} + \frac{(10137-10000)^2}{10000} + \frac{(9908-10000)^2}{10000} + \frac{(10025-10000)^2}{10000} + \frac{(9971-10000)^2}{10000} \\
&+ \frac{(10026-10000)^2}{10000} + \frac{(10029-10000)^2}{10000} + \frac{(10025-10000)^2}{10000} + \frac{(9978-10000)^2}{10000} + \frac{(9902-10000)^2}{10000} \\
&= 4.093 \\
\chi_6^2 &= \frac{(99959-100000)^2}{10000} + \frac{(99758-100000)^2}{10000} + \frac{(100026-100000)^2}{10000} + \frac{(100229-100000)^2}{10000} + \frac{(100230-100000)^2}{10000} \\
&+ \frac{(99548-100000)^2}{10000} + \frac{(100359-100000)^2}{10000} + \frac{(99800-100000)^2}{10000} + \frac{(99985-100000)^2}{10000} + \frac{(100106-100000)^2}{10000} \\
&= 5.50908
\end{align}
$$
上記はそれぞれ自由度$10-1=9$の$\chi^2$分布に従うため、有意水準5%で片側検定するにあたっては$\chi^2_{\alpha=0.05}(9)=16.919$と比較すればよい。
$\chi_4^2<\chi^2_{\alpha=0.05}(9)$、$\chi_5^2<\chi^2_{\alpha=0.05}(9)$、$\chi_6^2<\chi^2_{\alpha=0.05}(9)$より、等確率(一様分布)で分布すると下帰無仮説は棄却されない。(一様分布にしたがっていると考える方が妥当である)
また、書籍より$\chi_7^2$〜$\chi_9^2$についても同様であることが確認できる。

まとめ

Chapter.$5$の「適合度検定」の演習問題について確認を行いました。様々な問題のパターンはある一方で、基本的には$\displaystyle \chi^2 = \sum \frac{(O-E)^2}{E}$を用いて$\chi^2$検定を行うだけではあるので、解法の整理はしやすいと思います。

https://www.amazon.co.jp/dp/4130420674

「Ch.5 「適合度検定」の章末問題の解答例 〜基礎統計学Ⅲ 自然科学の統計学(東京大学出版会)〜」への1件の返信

コメントは受け付けていません。