統計分析では、**「差があるかどうか」**を判断するために、p値や統計的有意差を使うことが一般的です。
しかし、統計的に有意だからといって、その差が実際に意味のあるものとは限りません。
そこで重要になるのが「効果量(Effect Size)」という概念です。
特に、2つのグループの平均値の差を標準化して比較する指標として**コーエンのd(Cohen’s d)**が広く使われています。
本記事では、
- コーエンのdとは何か?
- 効果量と統計的有意差の違い
- コーエンのdの計算方法と実用例
について、わかりやすく解説します!
コーエンのdとは?効果量の基本概念
効果量とは?
効果量(Effect Size)とは、統計的な差の大きさを定量的に表した指標です。
例えば、「A社の広告とB社の広告、どちらのクリック率が高いか?」を比較するとき、
- p値が小さければ「統計的に有意」と判定される
- しかし、実際の差がごくわずかなら、マーケティング上は意味がない
このように、統計的有意性だけでは「その差がどれくらい大きいのか?」がわかりません。
効果量を使うことで、「実際の影響の大きさ」を数値で測定できるのです。
コーエンのdとは?
**コーエンのd(Cohen’s d)**は、2つのグループの平均値の差を標準偏差で割った値で、平均値の違いがどの程度大きいのかを示す指標です。
✅ 数式(計算式)d=M1−M2sd = \frac{{M_1 – M_2}}{s}d=sM1−M2
- M1M_1M1 :グループ1の平均値
- M2M_2M2 :グループ2の平均値
- sss :標準偏差(通常は両グループの標準偏差の平均を使う)
✅ 解釈の目安(Cohen, 1988)
コーエンのd | 効果の大きさ |
---|---|
0.2 未満 | ほぼ差なし(小さい効果) |
0.2 ~ 0.5 | 小さい効果(小さいが実質的に意味がある可能性) |
0.5 ~ 0.8 | 中程度の効果(明確な違いがある) |
0.8 以上 | 大きな効果(はっきりとした差がある) |
例えば:
- d = 0.2(小さい効果):2つのグループの成績差が「わずかに」ある
- d = 0.5(中程度の効果):実験群と対照群で「明確な」違いがある
- d = 0.8(大きな効果):治療薬AとBの効果に「はっきりした差」がある
統計的有意差(p値)と効果量の違い
統計的有意差(p値)と効果量(コーエンのd)は、よく混同されがちですが、意味が異なります。
統計的有意差(p値)とは?
p値は、「偶然の誤差として説明できない確率」を示します。
例えば、p < 0.05 なら「偶然にこの差が出る確率が5%未満だから、差は統計的に有意」と判断します。
✅ 統計的有意差の問題点
- サンプルサイズが大きいと、小さな差でもp値は有意になりやすい
- サンプルサイズが小さいと、差があっても有意にならないことがある
- 「有意差がある」と言っても、実際に意味のある差とは限らない
例:「Aクラスの平均点が70点、Bクラスの平均点が72点(p < 0.05)」
→ 2点の差が統計的に有意でも、実生活では意味があるとは言えない
コーエンのdの計算例(Pythonで実装)
Pythonを使って、2つのグループの平均値の差をコーエンのdで比較する方法を紹介します。
【仮想データ】
- グループA(n=30):平均80点、標準偏差10
- グループB(n=30):平均85点、標準偏差12
pythonコピーする編集するimport numpy as np
# サンプルデータ(テストスコア)
group_A = np.random.normal(80, 10, 30) # 平均80、標準偏差10
group_B = np.random.normal(85, 12, 30) # 平均85、標準偏差12
# 平均と標準偏差を計算
mean_A, mean_B = np.mean(group_A), np.mean(group_B)
std_A, std_B = np.std(group_A, ddof=1), np.std(group_B, ddof=1)
# プール標準偏差(共通の標準偏差)
pooled_std = np.sqrt(((std_A ** 2) + (std_B ** 2)) / 2)
# コーエンのdを計算
cohen_d = (mean_A - mean_B) / pooled_std
print(f"グループAの平均: {mean_A:.2f}, グループBの平均: {mean_B:.2f}")
print(f"コーエンのd: {cohen_d:.2f}")
✅ 結果の解釈
- d = 0.5 ~ 0.8なら「中程度の効果」
- d > 0.8なら「大きな効果」
- d < 0.2なら「実質的な差はほぼない」
コーエンのdの実用例
① 教育分野:学習法の比較
- ある新しい学習方法を導入した生徒(グループA)のテストスコアと、従来の方法を使った生徒(グループB)のスコアを比較
- d = 0.5 なら「中程度の効果がある」と判断できる
② 医療分野:薬の効果比較
- 新薬を使用した患者(グループA) と 従来の薬を使用した患者(グループB) の改善度を比較
- d = 0.8以上 なら「新薬の効果は明らかに大きい」
③ マーケティング:広告の効果
- 広告Aと広告Bのクリック率を比較し、どちらがより効果的かを判断
- d = 0.3 なら「わずかな効果があるが、大きな差ではない」
まとめ
✅ 統計的有意差(p値)は「偶然ではない差」だが、実際の影響の大きさはわからない
✅ コーエンのdは「差の大きさ」を数値で示すため、より実用的な指標
✅ Pythonを使って簡単に計算できるので、統計分析やデータサイエンスに活用可能
p値と効果量を組み合わせることで、より実用的な統計分析が可能になります!