前回の記事では95パーセント予言的中区間による仮説検定の方法を説明した。
この方法では母数nを仮定して検証、といったプロセスを都度おこなう必要があった。
今回は、コイントスを例に10回表が出たという結果のみを知っている場合、母数n(コインを投げた回数)は何枚から何枚と考えられるか、という信頼区間をPythonを使って求めていく。
ではJupyter Notebookを立ち上げてコードを書いていこう。
95%信頼区間に該当する母数nを全て出力する関数を作ってみた。
import numpy as np
def func_coin_interval_estimation(x):
# 初期化
cnt = 0
print("コインの表が"+str(x)+"回出たときの母数nの95パーセント信頼区間\n")
while True:
# 母数nに1を加算し続ける
cnt += 1
n = x + cnt
# 平均値
ave = n / 2
# 標準偏差
std = np.sqrt(n) / 2
# 検定
z = (x - ave) / std
# 検定した結果が95パーセント信頼区間に入れば出力、それ以外ならループ制御処理
if z >= -1.96 and z <= 1.96:
print(str(n)+" : "+str(z))
elif z < -1.96:
break
else:
continue
95パーセント予言的中区間による仮説検定をおこなう際の式は次のとおりだったはずだ。
$$-1.96 \leqq \frac{x – μ}{σ} \leqq 1.96$$
これを関数化し、検定した結果zが区間内に位置する場合、print関数で出力するといった内容となっている。
実際に作った関数を利用しコードを実行してみる。
# 表が出た回数
omote = 10
func_coin_interval_estimation(omote)
上記のとおり、区間推定の結果を得ることができた。
この結果を母数nの95パーセント信頼区間と言う。
今回紹介したサンプルコードではomoteという変数に、表が出た回数という結果を入れている。
omoteの値を100や500など別の値に変更しても、信頼区間を求めることができるので、各自で好きな値に変更して試してもらいたい。
【中卒でも分かる統計学入門】連載記事一覧
- 度数分布表とヒストグラム
- 度数分布表から平均値を求める
- 色々な平均値の求め方
- データの散らばり具合をみる分散と標準偏差
- 度数分布表から標準偏差を求める
- 標準偏差を理解して偏差値の求め方と意味を知る
- Pythonで偏差値を求める
- 仮説検定で一つのデータから母集団を推定する
- Pythonで95パーセント信頼区間を求める ←←現在見ている記事
- 平均に対する区間推定
- 母集団からとった標本平均の95パーセント予言的中区間
- 標本平均から母平均を区間推定する
- 標本分散とカイ二乗分布
- カイ二乗分布から母分散を推定する
- 標本分散に比例する統計量Wの求め方
- 母平均が分からなくても母標準偏差を推定する方法
- 統計量Tを求めてt分布を理解する
- t分布を使った区間推定