区間推定と検出力分析

秋山海登

2025-01-16

自己紹介

  • 好きな物:
    • 飲み物:コカ・コーラ
    • 食べ物:チョコレート
    • 動物:鳥類(特にオウムやフクロウ)
  • 苦手なこと:
    • ベッドから動くこと
    • じっとしてること

本授業の内容

  • 前半(75分):統計的推定
    • 点推定
    • 区間推定
    • 演習1:区間推定の実践
    • シミュレーションによる区間推定の検証
  • 後半(75分):統計的検定
    • 統計的検定の誤り
    • 再現性の問題
    • 検出力分析
    • 演習2:検出力分析の実践
    • シミュレーションによる検出力分析の検証
    • 課題の説明

問題提起

身近な疑問から統計的推論へ

日常生活における疑問

例:「睡眠時間と集中力って,本当に相関があるのかな?」

  • 多くの人が,睡眠不足だと集中力が落ちると感じている

例:「朝食を食べる習慣は,学力に影響するんだろうか?」

  • 朝食を食べた方が良いと聞くけれど,本当に効果があるのか?

統計的推論

主観的な判断からデータによる判断へ

統計的推定

得られたデータから母数を推定する

統計的推定とは?

  • 母数(母集団における代表値)を,標本(実際に得られたデータ)から推測すること
    • 例:
      • 母平均 (μ): 母集団における測定値の平均
      • 母相関係数 (ρ): 母集団における2変数間の相関係数
  • 母数は,通常,未知であるため,標本から推定する必要がある
    • 母数の測定が現実的に困難であるため
  • 推定の方法には,点推定と区間推定がある

点推定

  • 母数(母集団における代表値)を,標本(実際に得られたデータ)から推測すること
  • 母数は通常未知であるため,標本から推定する必要がある
  • 推定の方法には,点推定と区間推定がある

最尤法 (Maximum Likelihood Estimation: MLE)

  • 「データが最も起こりやすい値」を推定値とする方法
  • データの生起確率を最大化する母数を求める
  • 例:成功確率が未知のコインを5回投げたところ,表が3回出た。
    • この場合,コインの表が出る確率を θ とし,最尤法ではその推定値を 3/5 とする
    • このデータ(表3回,裏2回)が生じる確率が,θ = 3/5 の時に最大になるため
  • 特徴:分布の仮定が必要
    • 上記の例では,コイン投げの結果はベルヌーイ分布に従うと仮定している。
    • ベルヌーイ分布は,成功確率 θ を持つ試行の結果が成功か失敗かの2値である確率分布

最小二乗法 (Least Squares Method: LSM)

  • 「観測値と予測値の差(残差)の二乗和を最小にする値」を推定値とする方法
  • 残差(実測値と予測値の差)の二乗和を最小化
  • 例:回帰分析で,データ点と回帰直線上の予測値との差の二乗和が最小となるような直線を引く
  • 特徴:分布の仮定は不要な場合が多い。ただし,統計的仮説検定には誤差項の分布に関する仮定が必要になる場合もある。

最尤法と最小二乗法の比較

項目 最尤法 (MLE) 最小二乗法 (LSM)
推定方法 データの生起確率を最大化する母数を求める 残差の二乗和を最小化する値を求める
分布の仮定 必要 不要な場合が多い
計算の複雑さ 複雑になる場合がある 比較的単純
適用例 コイン投げ,ポアソン分布に従うデータなど 線形回帰分析,多項式回帰分析など
類似点 状況によっては同じ結果を与える
相違点 分布の仮定が必要,計算が複雑になる場合がある 分布の仮定が不要な場合が多い,計算が比較的単純

区間推定 (Interval Estimation)

  • 定義:母数(例:母集団平均)を,範囲で推測する方法
    • 例:「大学生の平均睡眠時間は6.5時間から7.2時間の間にある」
  • 信頼区間 (Confidence Interval: CI):
    • 事前に決めた確率で母数を含む区間
  • 信頼水準 (Confidence Level):
    • 信頼区間が母数を含む確率 (例:95%, 99%)
    • 一般的に95%を使用される
    • 信頼水準が高くなるほど,区間幅は広くなる

研究例:抑うつへのオンラインCBTの効果

  • オンラインCBTプログラムの効果検証
  • 対象者数: 149名(完了142名)
  • 平均年齢: 41.4歳(SD=11.1)
  • 対象:軽度抑うつ症状のある会社員

信頼区間を数直線上でイメージ

  • 抑うつ症状(CES-D)の変化量

  • 95%信頼区間: [-5.2, -2.1]

:::

演習1

実際のデータを使って仮説検定を行う

データの概要

使用データ

  • 研究名: 「Webベースのポジティブ心理学的介入:効果の再検証」
  • 著者: Woodworth, R. J., et al. (2018)
  • 出典: Journal of Open Psychology Data, 6: 1
  • DOI: https://doi.org/10.5334/jopd.35

目的

  • ポジティブ心理学介入の長期的効果の検証
  • 実際の研究における統計的検定の活用方法の学習

特徴

  • オープンデータとして公開

研究背景

  • Seligman et al. (2005)のポジティブ心理学介入に関する研究は,幸福感の向上と抑うつの軽減に効果がある可能性を示唆した。
  • Woodworth et al. (2017)は,先行研究を追試する研究を行ったが,有意な効果は確認されず,ポジティブ心理学的介入の効果を再検討する必要性が示唆された。

研究目的

  • Webベースのポジティブ心理学的介入が,幸福感と抑うつに及ぼす効果の検証
  • 質問紙尺度を用いて,介入前後,そして6ヶ月までの追跡期間で測定
  • 異なる介入条件間の効果を比較検討する。

参加者

  • 一般参加者 295名

測定時期

  • ベースライン(0)
  • 介入直後(1)
  • 1週間後(2)
  • 1ヶ月後(3)
  • 3ヶ月後(4)
  • 6ヶ月後(5)

測定指標

  • AHI: Authentic Happiness Inventory (24項目)
    • 幸福感を測定する尺度で,過去1週間の感情について5件法で回答
    • 合計スコアは24-120の範囲
  • CES-D: Center for Epidemiological Studies Depression scale (20項目)
    • 抑うつ症状を測定する尺度で,過去1週間の症状について4件法で回答
    • 合計スコアは0-60の範囲

Rでの分析

データの読み込み

ahi_cesd <- read.csv("data/ahicesd.csv") # データの読み込み
  • Woodworth et al.(2018)のデータにアクセスして,ファイルをダウンロードして開く。作成したプロジェクト内のdataフォルダ内にahi-cesd.csvを配置する。
  • データの格納場所:プロジェクトのdataフォルダ内
  • データはcsv形式なので,read.csv()で読み込む。

データの確認

以下の変数がある:

  • id: 参加者ID
  • occasion: 測定時点
  • elapsed.days: 経過日数
  • intervention: 介入条件
  • ahi01~: AHI(幸福感)の項目
  • cesd01~: CES-D(抑うつ)の項目

演習1におけるリサーチクエスチョン

「幸福感と抑うつは,どの程度の負の相関を示すのだろうか?」

  • 直感的には,幸福な人は抑うつ傾向が低く,抑うつ傾向の強い人は幸福感が低いと考えられる
  • しかし,それはどの程度の相関を示すのだろうか?
  • 区間推定を行うことで検証可能
  • 演習1はベースライン時点(介入前)のデータのみを使用する

相関分析

目的

  • 幸福感と抑うつの相関係数を推定する

内容

  • ベースライン時点(介入前)のデータのみを使用
  • 95%信頼区間と99%信頼区間を算出

相関分析の実行

baseline_data <- subset(ahi_cesd, occasion == 0)  # ベースライン(occasion = 0)のデータのみを抽出
baseline_scores <- baseline_data[, c("ahiTotal", "cesdTotal")] # 分析に必要な変数(AHIとCES-Dの得点)のみを選択
# 95%信頼区間
correlation_result_95 <- cor.test(# 結果をオブジェクトとして格納
  x = baseline_scores$ahiTotal,    # 幸福感得点
  y = baseline_scores$cesdTotal,   # 抑うつ得点
  method = "pearson",              # ピアソンの相関係数を使用
  alternative = "two.sided")
# 99%信頼区間
correlation_result_99 <- cor.test( # 結果をオブジェクトとして格納
  x = baseline_scores$ahiTotal,    # 幸福感得点
  y = baseline_scores$cesdTotal,   # 抑うつ得点
  method = "pearson",              # ピアソンの相関係数を使用
  alternative = "two.sided",
  conf.level = 0.99)

print関数で結果の表示

print(correlation_result_95)

    Pearson's product-moment correlation

data:  baseline_scores$ahiTotal and baseline_scores$cesdTotal
t = -18.042, df = 293, p-value < 2.2e-16
alternative hypothesis: true correlation is not equal to 0
95 percent confidence interval:
 -0.7754145 -0.6664727
sample estimates:
       cor 
-0.7254563 
print(correlation_result_99)

    Pearson's product-moment correlation

data:  baseline_scores$ahiTotal and baseline_scores$cesdTotal
t = -18.042, df = 293, p-value < 2.2e-16
alternative hypothesis: true correlation is not equal to 0
99 percent confidence interval:
 -0.7893886 -0.6459568
sample estimates:
       cor 
-0.7254563 

なぜオブジェクトに格納するのか?

  • 一度の分析結果を複数回利用可能
# 相関係数だけ表示
correlation_result_95$estimate
# p値だけ表示
correlation_result_95$p.value
# 信頼区間だけ表示
correlation_result_95$conf.int
  • 分析結果に意味のある名前をつけてコードの意図を明確化
長村に頼まれた分析 <- correlation_result_95
  • 結果を他の分析や可視化に利用可能
ggplot() +
  geom_point() +
  geom_smooth(method = "lm") +
  ggtitle(paste("相関係数:", 
          round(correlation_result_95$estimate, 3)))

結果の解釈

相関係数は r = -.73 であり,強い負の相関が見られた

  • p値は 2.2e-16より小さく,統計的に有意である
    • 帰無仮説は棄却される
    • 2.2e-16 = .00000000000000022
  • 95%信頼区間は [-.78, -.67]
  • 99%信頼区間は [-.79, -.65]
  • 99%信頼区間の方が95%信頼区間よりも幅が広い

正規分布を用いた95%信頼区間と有意水準の解釈

散布図

信頼区間のシミュレーションコード

n_sims <- 1000      # シミュレーション回数を定義
sample_size <- 30   # サンプルサイズ
true_cor <- cor(baseline_data$ahiTotal, baseline_data$cesdTotal)  # 母相関係数
# 結果格納用のデータフレーム作成
results <- data.frame(
  sim_number = 1:n_sims,
  estimate = numeric(n_sims),
  ci_lower = numeric(n_sims),
  ci_upper = numeric(n_sims),
  contains_true = logical(n_sims)
)
set.seed(123)  # 再現性のために乱数シードを固定
for(i in 1:n_sims) {
  # 無作為抽出とデータ分析
  sample_data <- baseline_data[sample(1:nrow(baseline_data), 
                                    sample_size, replace = TRUE), ]
  test_result <- cor.test(sample_data$ahiTotal, sample_data$cesdTotal)
  
  # 結果の記録
  results[i, 2:5] <- c(test_result$estimate,
                       test_result$conf.int,
                       between(true_cor, test_result$conf.int[1], 
                              test_result$conf.int[2]))
}

シミュレーション結果の可視化

シミュレーション結果の解釈

図の見方

  • 縦の線:各試行での95%信頼区間
  • 点:推定された相関係数
  • 赤い破線:母集団の真の相関係数
  • 青い区間:母数を含む信頼区間
  • 赤い区間:母数を含まない信頼区間

重要な発見

  • 約95%の信頼区間が母数を含む
  • 区間の幅は試行ごとに異なる
  • 推定値は真の値の周りでばらつく
  • 理論値(95%)と実測値が近い

シミュレーション結果の解釈

図の見方

  • 縦の線:各試行での95%信頼区間
  • 点:推定された相関係数
  • 赤い破線:母集団の真の相関係数
  • 青い区間:母数を含む信頼区間
  • 赤い区間:母数を含まない信頼区間

重要な発見

  • 約95%の信頼区間が母数を含む
  • 区間の幅は試行ごとに異なる
  • 推定値は真の値の周りでばらつく
  • 理論値(95%)と実測値が近い

後半

統計的仮説検定

統計的仮説検定とは?

  • 標本データに基づき,観察された差や関係性が統計的に意味があるか判断する

研究例:オンラインCBTはうつ症状を改善するか?

  • 介入群:オンラインCBTを実施(20名)
  • 統制群:通常のケアのみ(20名)
  • 結果:介入群の方が症状が改善
    • しかし,この差は単なる個人差による変動なのか?
    • それとも介入の効果と言えるのか?
  • → 統計的仮説検定で判断

統計的仮説検定の役割

観察された差が統計的に有意か判断する

  • 事前に定めた基準(有意水準)に基づいて判断を行う
    • データを見てから基準を変更しない
    • 恣意的な判断を防ぐ

重要性

  • 再現性の確保
  • 研究の信頼性向上

統計的仮説検定におけるエラー

  1. 第1種の誤り (α)
    • 実際には効果がないのに,誤って「効果がある」と判断するエラー
      • 帰無仮説が正しい場合に,帰無仮説を誤って棄却
      • 有意水準は通常5%と設定される
  2. 第2種の誤り (β)
    • 実際には効果があるのに,誤って「効果がない」と判断するエラー
      • 対立仮説が正しい場合に,対立仮説を誤って棄却
      • 検出力は1-βと表現される

再現性の危機

  • 心理学研究の約40%が再現できない (Open Science Collaboration, 2015)

主な原因

  1. 不適切な研究実践
    • 事後的な分析方法の変更(HARKing)
    • 有意な結果のみが出版される傾向(出版バイアス)
    • p < .05を達成するための不正(p-hacking)
  2. 透明性の欠如
    • 事前登録の不足
    • データ共有の不足
    • 分析コードの非公開

p-hacking

  • データや分析方法を操作して,意図的にp < .05を達成すること
  • 研究の信頼性を著しく損なう不適切な研究実践

具体例

  1. データの選択的除外
    • 「外れ値」として都合の悪いデータを除外
    • 後出しで除外基準を変更
  2. 変数の選択的報告
    • 有意な結果が出た変数のみを報告
    • 複数の従属変数から都合の良いものを選択
  3. n増し問題
    • 中間解析で有意でない場合,追加でデータを収集
    • p値が.05を下回るまでサンプルサイズを増やし続ける

事例:オルトメディコの「有意差保証プラン」

有意差が出るまで繰り返す臨床試験サポートサービス

なぜ問題なのか?

  1. 統計的な問題
    • n増し問題による第1種の誤り率の増大
    • p-hackingの一形態
  2. 倫理的な問題
    • 研究の信頼性を損なう
    • 消費者を誤認させる可能性
    • 科学的な研究プロセスの歪曲

HARKingの例:非劣性検定への切り替え

  • オンラインCBTの効果検証(対面CBTより優れているという仮説)

  • 主要評価項目:CES-D得点の変化量

事後的な仮説変更-HARKing-

  1. 当初の仮説
    • オンラインCBTは対面CBTより効果が高い
    • 両側検定で計画(α = .05)
  2. 結果を見てからの変更
    • 「オンラインCBTは対面CBTと同等の効果がある」
    • 非劣性検定に切り替え

問題点

  • 検定方法の事後的な変更
  • 有意水準の実質的な操作
  • 結果の解釈が恣意的

片側検定と両側検定

両側検定

  • 対立仮説が,母数の値が「等しくない」ことを主張する場合に用いる
    • 例:母集団相関係数がゼロではない(ρ ≠ 0)
  • 棄却域を分布の両側に設定

片側検定

  • 対立仮説が,母数の値が「大きい」または「小さい」ことを主張する場合に用いる
    • 例:母集団相関係数がゼロより大きい(ρ > 0),または母集団相関係数がゼロより小さい(ρ < 0)
  • 棄却域を分布の片側に設定

再現性問題への対策

  • 事前登録の推進
  • オープンデータ・オープンコードの推進
  • サンプルサイズの適切な設計

事前登録による透明性の確保

  1. 研究開始前に登録する内容

    主要評価項目: CES-D得点の変化
    解析方法: 混合モデル分散分析
    除外基準: 3回以上欠席した参加者
    サンプルサイズ: 各群30名
    検出力: .80 (効果量 d = 0.50)
  2. 透明性が高まる理由

    • 分析方法の事前確定
    • 結果の選択的報告を防止
    • サンプルサイズの事前確定

事前登録による透明性の確保

事前登録の重要な要素

  1. 時系列的な記録
    • 研究開始前の登録(2022/04/28)
    • 進捗状況の定期的な更新
    • 結果公開までの追跡(2024/02)
  2. 透明性の確保
    • プロトコルの事前確定
    • 参加者数の記録
    • 結果公開状況の管理

事前登録プラットフォーム:OSF

検出力

  • 定義:母集団に実際に効果がある場合に,それを検出できる確率
    • 帰無仮説を正しく棄却できる確率
    • 第2種の誤り(β)を犯さない確率(1-β)

ネイマン=ピアソン理論

概要

  • 統計的仮説検定の基礎となる理論
  • 2つの仮説(帰無仮説と対立仮説)の間で判断を行う
  • 最適な検定方法を数学的に定式化

実践的意義

  • 客観的な判断基準の提供
  • 検定の誤りを定量的に評価可能
  • サンプルサイズ設計の理論的基盤

検出力分析によるサンプルサイズ設計

概要

  • 適切なサンプルサイズ設計のための手法
  • 4つの要素の関係性を考慮:
    1. サンプルサイズ (n)
    2. 効果量 (effect size)
    3. 有意水準 (α)
    4. 検出力 (1-β)

意義

  • 過剰なサンプルサイズを防ぐ
    • 研究資源の効率的な活用
    • 倫理的配慮
  • 検出力不足を防ぐ
    • 効果の見逃しを防止
    • 研究の信頼性向上

サンプルサイズ設計の実例

  • 想定する効果量:完遂率20%の改善
    • 先行研究はチャットボット使用で20%改善
  • 統計的検出力分析
    • α = .05(両側検定)
    • 検出力 = 80%
    • 必要サンプルサイズ:124名
  • 実際の募集人数:150名
    • オリエンテーション不参加や参加辞退を考慮
    • 脱落率20%を想定

演習2

サンプルサイズの設計

演習1の結果の振り返り

  • AHIとCES-Dの相関分析結果:
    • 相関係数: r = -.73
    • 強い負の相関が確認された
    • 統計的に有意 (p < .001)

追試研究の計画

  1. 目的
    • 先行研究の結果を追試研究により再確認すること
  2. 検定方法
    • 検定:無相関検定(両側検定)
    • 帰無仮説:母相関係数 ρ=0
    • 対立仮説:母相関係数 ρ≠0
  3. 検出力分析の設定
    • 効果量r=0.73(先行研究と同程度の効果量を想定)
    • 有意水準α=.05(5%)
    • 検出力:1−β=0.80(80%)

必要なサンプルサイズの算出

library(pwr)# 要インストール
power_analysis <- pwr.r.test( # 相関検定における検出力分析の関数
  r = 0.73,        # 演習1での効果量
  power = 0.80,    # 目標とする検出力
  sig.level = 0.05,# 有意水準
  alternative = "two.sided"  # 両側検定
)
print(power_analysis) # 結果の表示

     approximate correlation power calculation (arctangh transformation) 

              n = 11.51337
              r = 0.73
      sig.level = 0.05
          power = 0.8
    alternative = two.sided

検出力分析の結果解釈

  • 必要なサンプルサイズ:12名
    • 11.51を切り上げ
  • 設定条件:
    • 効果量:r = 0.73(先行研究相当)
    • 有意水準:α = .05(5%)
    • 検出力:1-β = .80(80%)
    • 両側検定

サンプルサイズは本当に正しいか

サンプルサイズの妥当性検証

  • サンプルサイズ12名で検出力80%を達成
  • 有意な相関を検出できる確率が80%
  • 第二種の誤りの確率は20%
  • 実際に母集団から12⼈サンプリングして無相関分析を何度も繰り返した場合,そのうち80%の標本相関が有意になる

シミュレーションでの検出力の確認

シミュレーションの手順

  1. サンプリング
    • 母集団から12名をランダム抽出
    • 置き換えなしの抽出を実施
  2. 分析実行
    • 相関分析の実施
    • p値の算出と有意性の判定
  3. 繰り返し処理
    • 上記を1000回繰り返し
    • 結果を記録・集計
  4. 検出力の算出
    • 有意な相関が検出された割合を計算
    • 理論値(80%)との比較

実際にシミュレーションを実施

num_simulations <- 10000  # シミュレーション回数
sample_size <- 12        # サンプルサイズ
significant_results <- 0 # 有意な結果のカウンター

# シミュレーションの実行
set.seed(2025)  # 再現性のために乱数シードを設定
for(i in 1:num_simulations) {
  # 12名をランダムに抽出
  sample_indices <- sample(nrow(baseline_data), sample_size)
  sample_data <- baseline_data[sample_indices, ]
  
  # 相関分析の実行
  test_result <- cor.test(
    sample_data$ahiTotal, 
    sample_data$cesdTotal,
    method = "pearson"
  )
  
  # 有意な結果(p < .05)をカウント
  if(test_result$p.value < 0.05) {
    significant_results <- significant_results + 1
  }
}

# 検出力(有意な結果の割合)の計算
empirical_power <- significant_results / num_simulations
print(paste("シミュレーションによる検出力:", 
            round(empirical_power, 3)))  # 小数点以下3桁で丸めて表示
[1] "シミュレーションによる検出力: 0.868"

実際の研究とシミュレーションの違い

1. 効果量の不確実性

  • 先行研究と同じ効果量が得られるとは限らない
  • 変動要因:研究条件の違い,サンプル特性の違い,測定誤差の影響
  • 追試研究では保守的なサンプルサイズ設定を推奨

2. 母集団の問題

  • 実際の研究では:
    • 母集団が明確でない場合がある
    • サブグループに偏りがある可能性
    • 完全な無作為抽出は困難

課題

時点別の相関分析と検出力分析

課題の概要

目的

  • 複数時点における抑うつと幸福感の相関を分析
  • それぞれの相関係数から追試に必要なサンプルサイズを算出

分析対象

  • Woodworth et al. (2018)のデータ(ahi-cesd.csv)
  • ベースライン時点を除く5時点

課題の具体的内容

1. 相関分析

以下の各時点で95%と99%の信頼区間を算出:

  • 介入直後 (時点1)
  • 1週間後 (時点2)
  • 1ヶ月後 (時点3)
  • 3ヶ月後 (時点4)
  • 6ヶ月後 (時点5)

2. 検出力分析

  • 各時点の相関係数を用いて
  • 必要サンプルサイズを算出
  • 設定条件:
    • 有意水準:α = .05
    • 検出力:1-β = .80

提出方法

  1. 各時点での95%と99%の信頼区間を報告
  2. 各時点での相関係数から必要サンプルサイズを報告

参考文献

オンライン資料

Quartoによるスライド作成

書籍

数値シミュレーションで読み解く統計のしくみ

数値シミュレーションで読み解く統計のしくみ〜Rでためしてわかる心理統計