この記事では、Python言語とNumPyを用いて、母平均を点推定を求める方法をソースコード付きで解説します。
母平均の点推定
点推定とは、母集団の特性値(母平均・母分散など)を標本の特性値1つから推定することです。
母平均の点推定は、母集団から取り出した標本の平均値を計算するだけです。
点推定を何回も繰り返し、標本の平均値を複数回求めてその平均を取ってやれば、点推定で求めた母平均は本来の母平均の値に近づいていきます。
今回はそれを試してみました。
アルゴリズム
プログラムの処理手順は下記の通りです。
①数値計算モジュール「NumPy」をインポートする。
②サイズ100の母集団を生成する。
③母集団からサイズ5のデータをランダムに取り出し、標本を生成する。
④標本平均を計算する。
⑤2-4の処理を100回繰り返す。
⑥100個の標本平均の平均値を計算する。(母平均の推定)
⑦計算結果を表示する。
ソースコード
サンプルプログラムのソースコードです。
# -*- coding: utf-8 -*- import numpy as np def main(): # 母集団の生成 data = np.random.rand(50) # 母平均の点推定 ave = np.ndarray([]) # 標本平均を格納する配列 # 点推定(100回繰り返し) for i in range(100): x = np.random.choice(data,5) # 母集団からサイズ5の標本を抽出 ave = np.append(ave, np.average(x)) # 標本平均を計算して配列に格納 mu = np.average(ave) # 100個の標本平均の平均値:母集団の推定平均値 # 結果を表示 print("点推定で求めた母平均:", mu) # 0.41236012518 print("実際の母平均:", np.average(data)) # 0.412642489611 if __name__ == '__main__': main()
コメント