本ページには広告・プロモーションが含まれています。
t検定とは平均値について差があるか、ないかを調べる手法です。
カイ二乗検定 と同様に p値 というのを求めて差を検定することができる。
p値とは 実際に観測された分布が理論的に予想される分布にどれだけ近づいているかを表す確率 のこと。有意水準と呼ぶ。
p値が大きければ 、平均値に 差がない ことを示し、 p値が小さければ 、平均値に 差がある ことを示す。
一般にこの値が5%未満(p < 0.05)の場合にデータには「統計学的に有意な差がある」とされるため、 p値が 0.05 未満だと、 平均値には差がある と解釈する。
p値 | 解釈 |
---|---|
p > 0.05 | 平均値に差があるとは言えない |
p < 0.05 | 平均値に差があると言えそう |
例として当せん金額を使ったt検定をやってみます。
申込タイプ「ストレート」「ボックス」「セット」「ミニ」によって当せん金額に差があるのかを検定することで、 いつどんなタイプを買えば収支がプラスになりやすいのかを予想する(検討材料とする)ことができます。
1サンプルの検定は標本から得られた平均値が母集団の平均値と等しいのかを調べる 方法です。
標本を「実際の当せん金額の平均値」、母集団を「理論値の当せん金額」として、 当せん金額が理論値の当せん金額と差があるのか を調べてみます。
ナンバーズ3では申し込みタイプがストレートの場合、 当せん金額の理論値は90,000円 です。
ストレートで当せんすると90,000円くらいは受け取ることができるわけですが 実際の当せん金額の平均金額は以下のようになっています。
第4211回から第4220回のデータです。
ストレートの当せん金額(円) | |
---|---|
回号 | |
4220 | 84,600 |
4219 | 113,200 |
4218 | 86,000 |
4217 | 99,600 |
4216 | 52,500 |
4215 | 82,100 |
4214 | 82,000 |
4213 | 91,600 |
4212 | 86,100 |
4211 | 104,100 |
当せん金額の平均値 | 88,180 |
実際の当せん金額の平均値は 88,180 ということで理論値である90,000円より少ないように見えますが本当に差があるのでしょうか?
obs = [84600,113200,86000,99600,52500,82100,82000,91600,86100,104100]
# 2つ目の引数は期待値(理論値)である90,000円を指定する。
t,p = scipy.stats.ttest_1samp(obs, 90000)
# p値
0.73217570675665056
p値は有意水準 5% より大きい( 0.05 < 0.73 ) ので、当せん金額の平均値は理論値の当せん金額90,000円を下回っているとは言えないとなります。
対応なしの検定は、2つの独立した母集団から標本を選んでくる場合に用いる 手法です。
まず「2つの独立した母集団」というのを「月曜日」と「金曜日」としてみましょう。
「月曜日」と「金曜日」の抽せん数字は独立していると考え、これらのストレートの当せん金額について平均値に差があるのかを検定してみます。
用いるデータは2015年8月の第2週目と3週目の「月曜日」と「金曜日」の当せん金額です。
月曜日 ストレートの当せん金額(円) | 金曜日 ストレートの当せん金額(円) | |
---|---|---|
2015年8月 | ||
第2週目(2015/8/3, 2015/8/7) | 95,100 | 84,900 |
第3週目(2015/8/10, 2015/8/14) | 105,500 | 82,700 |
当せん金額の平均値 | 100,300 | 83,800 |
当せん金額の平均値の差は16,500円もあり、月曜日に買って当せんするほうが金額が大きいと言えそうですが本当にそうなのでしょうか?
というわけで、対応なしの検定方法です。
obs_mon = [95100, 105500]
obs_fri = [84900, 82700]
t,p = scipy.stats.ttest_ind(obs_mon, obs_fri)
# p値
0.089979735319439411
p値は有意水準 5% より大きい( 0.05 < 0.08 ) ので、当せん金額の平均値に差があるとは言えないとなります。
# 2つの母集団が等しい平均を持つという仮説を検定する(ウェルチのt検定)場合
t,p = scipy.stats.ttest_ind(obs_mon, obs_fri, equal_var=False)
# p値
0.18169652859097074
こちらも p値は有意水準 5% より大きい( 0.05 < 0.18 ) ので、当せん金額の平均値に差があるとは言えないとなります。
もっと多くのデータを分析すると「差がある」と言える結果がでてくるかもしれません。
対応ありの検定は、1つの母集団から標本を選んでくる場合に用いる 手法です。
1つの母集団というのを「同じ回号」とします。 そして同じ回号から得られた「セット(ボックス)」と「ミニ」の当せん金額をもとに平均値を検定します。
セット(ボックス)は抽せん数字が「3個の数字がすべて異なる場合」と「3個のうち、2個が同一数字の場合」では当せん確率と理論値の当せん金額が異なるので、ミニよりも当せん金額が低いこともある。
そこで、当せん金額の平均値に差があるなら、当せん金額が多い申し込みタイプを買うほうが良いのではないかという判断材料にできそうなので、セット(ボックス)とミニの当せん金額に差はあるのかを検定してみるのです。
第4201回と、第4202回のセット(ボックス)とミニの当せん金額で検定しましょう。
セット(ボックス) の当せん金額(円) | ミニ の当せん金額(円) | |
---|---|---|
回号 | ||
4202 | 9,900 | 11,900 |
4201 | 15,800 | 9,500 |
当せん金額の平均値 | 12,850 | 10,700 |
当せん金額の平均値の差はセット(ボックス) のほうが2,150円上回っています。セット(ボックス) を買って当せんするほうが金額が大きいと言えそうでしょうか?
というわけで、対応ありの検定方法です。
obs_set = [9900, 15800]
obs_mini = [11900, 9500]
t,p = scipy.stats.ttest_rel(obs_set, obs_mini)
# p値
0.69569530936582047
p値は有意水準 5% より大きい( 0.05 < 0.69 ) ので、当せん金額の平均値に差があるとは言えないとなります。
ここでは意図的に、抽せん数字が「3個の数字がすべて異なる場合」と「3個のうち、2個が同一数字の場合」をサンプルとして抽出しました。
次は、どちらの回号も抽せん数字が「3個の数字がすべて異なる場合」として第4202回から第4204回のセット(ボックス)とミニの当せん金額で検定してみます。
セット(ボックス) の当せん金額(円) | ミニ の当せん金額(円) | |
---|---|---|
回号 | ||
4204 | 6,300 | 7,600 |
4203 | 5,900 | 7,100 |
4202 | 9,900 | 11,900 |
当せん金額の平均値 | 7,366 | 8,866 |
当せん金額の平均値の差はミニのほうが1,500円上回っています。ミニを買って当せんするほうが金額が大きいと言えそうでしょうか?
obs_set = [6300, 5900, 9900]
obs_mini = [7600, 7100, 11900]
t,p = scipy.stats.ttest_rel(obs_set, obs_mini)
# p値
0.027012812355076216
p値は有意水準 5% より小さい( 0.05 > 0.02 ) ので、当せん金額の平均値に差があると言えそうです。 この検定結果だけから判断するとミニを買うほうが当せん金額が大きくなると期待できるかもしれません。
最終更新日: 2020年01月12日(日)