いっかくのデータサイエンティストをいく

1からプログラミングとデータサイエンスを独習したい

【統計学】母集団既知の平均の検定(RとPython)

教科書第10章になります。

母平均に関する検定です。母平均が既知で、標本平均が母集団の平均と重なるかどうか検定します。

Rで実装

t.testで簡単にできます。 詳しいパラメータはこちら。 データ解析・マイニングとR言語

今回は教科書P320 の例題10.1(1)(2)をします。

なお、検定については

bellcurve.jp

母平均の検定については

bellcurve.jp

に詳しいです。

Rで実装

t.test()で行えます。

data <- c(3.4, 4.5, 1.9, -1.6, 0.8 , 3.2, -0.3, 0.8,  3.7)

t.test(data, mu=2)
#One Sample t-test
#
#data:  data
#t = -0.26104, df = 8, p-value = 0.8007
#alternative hypothesis: true mean is not equal to 2
#95 percent confidence interval:
#  0.2517214 3.3927231
#sample estimates:
#  mean of x 
#1.822222 

t.test(data, mu=3.5)
#One Sample t-test
#
#data:  data
#t = -2.4635, df = 8, p-value = 0.0391
#alternative hypothesis: true mean is not equal to 3.5
#95 percent confidence interval:
#  0.2517214 3.3927231
#sample estimates:
#  mean of x 
#1.822222 

帰無仮説mu=2の場合帰無仮説を棄却できないが、mu=3.5の場合棄できることがわかりました。

Pythonで実装

stats.ttest_1samp関数で実装できます。

from scipy import stats

data = [3.4, 4.5, 1.9, -1.6, 0.8 , 3.2, -0.3, 0.8,  3.7]

stats.ttest_1samp(data, 2) 
#Out[45]: Ttest_1sampResult(statistic=-0.2610353864589317, pvalue=0.8006592700520638)

stats.ttest_1samp(data, 3.5) 
#Out[46]: Ttest_1sampResult(statistic=-2.463521459706165, pvalue=0.039103451692291666)

t値とp値が返ってきます。