statistical-analysis について
学術研究者向けの統計分析ガイドです。検定の選択、前提条件の診断、効果量の解釈、APA形式での報告を、頻度論とベイズ分析の両面から扱います。
主な機能
- 01頻度論とベイズ分析
- 02研究課題に応じた検定選択
- 03統計的前提条件の確認
- 04効果量の解釈
- 05APA形式での結果報告
活用シーン
- 01群間比較の検定選択
- 02回帰モデルの前提条件診断
- 03効果量と信頼区間の報告
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ jaechang-hits/ sciagent-skills --skill statistical-analysisインストール後、Claude Code で/statistical-analysisを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/bayesian_statistics.mdeffect_sizes_and_power.mdreporting_standards.md詳細
統計解析
概要
統計解析とは、適切な検定を選択し、仮定を検証し、効果の大きさを定量化して、結果を報告する体系的なプロセスです。このノウハウでは、学術研究における頻度論的解析とベイズ解析の検定選択、仮定の診断、APA 形式での報告について説明します。
主な概念
頻度論的枠組みとベイズ的枠組み
| 項目 | 頻度論 | ベイズ |
|---|---|---|
| 主な出力 | p 値、信頼区間 | 事後分布、信用区間 |
| 解釈 | 「H0 が真である場合、このデータが得られる可能性はどのくらいか?」 | 「データを踏まえたとき、H1 が真である可能性はどのくらいか?」 |
| 帰無仮説への支持 | H0 を支持することはできません(棄却できないだけです) | ベイズ因子によって H0 に対する証拠を定量化できます |
| 事前情報 | 使用しません | 事前分布を通じて取り入れます |
| サンプルサイズ | 十分な検出力が必要です | どのようなサンプルサイズでも扱えます |
| 最適な用途 | 標準的な解析、大規模サンプル | 小規模サンプル、事前情報、複雑なモデル |
統計的有意性と実質的有意性
統計的に有意な結果(p < .05)でも、実際にはごくわずかな効果である場合があります。必ず以下を報告してください。
- 効果量:効果の大きさ(Cohen の d、イータ二乗、r、R 二乗)
- 信頼区間:推定値の精度
- 文脈:その領域における臨床的・実践的な関連性
一般的な効果量
| 検定 | 効果量 | 小 | 中 | 大 |
|---|---|---|---|---|
| t 検定 | Cohen の d | 0.20 | 0.50 | 0.80 |
| t 検定(小標本) | Hedges の g | 0.20 | 0.50 | 0.80 |
| ANOVA | 偏イータ二乗 | 0.01 | 0.06 | 0.14 |
| ANOVA | オメガ二乗 | 0.01 | 0.06 | 0.14 |
| 相関 | r | 0.10 | 0.30 | 0.50 |
| 回帰 | R 二乗 | 0.02 | 0.13 | 0.26 |
| 回帰 | f 二乗 | 0.02 | 0.15 | 0.35 |
| カイ二乗 | Cramer の V | 0.07 | 0.21 | 0.35 |
| カイ二乗 2x2 | ファイ係数 | 0.10 | 0.30 | 0.50 |
Cohen の基準は目安であり、厳密な閾値ではありません。常に領域の文脈を考慮してください。
仮定の概要
ほとんどのパラメトリック検定では、以下が必要です。
- 独立性:観測値は互いに独立しています
- 正規性:データ(または残差)はおおむね正規分布に従います
- 等分散性:群間で分散が類似しています(群間比較の場合)
- 線形性:変数間の関係が線形です(回帰の場合)
仮定が満たされない場合:
- 正規性が満たされない、n > 30:続行します。大規模サンプルではパラメトリック検定は頑健です
- 正規性が満たされない、n < 30:ノンパラメトリックな代替手法を使用します
- 分散の不均一性:Welch の補正(t 検定)または Welch の ANOVA を使用します
- 線形性が満たされない:多項式項を追加する、変数を変換する、または GAM を使用します
検定ごとの仮定確認ワークフロー
t 検定の仮定:(1) Shapiro-Wilk 検定と Q-Q プロットで群ごとの正規性を確認します。(2) Levene 検定で等分散性を確認します。(3) 正規性が満たされない場合:Mann-Whitney U 検定(独立群)または Wilcoxon の符号付順位検定(対応あり)を使用します。分散が不均一な場合は Welch の t 検定を使用します。
ANOVA の仮定:(1) 群ごとの正規性を確認します。(2) Levene 検定で等分散性を確認します。(3) 反復測定の場合は球面性を確認します(Mauchly 検定)。満たされない場合は、Greenhouse-Geisser(イプシロン < 0.75)または Huynh-Feldt(イプシロン > 0.75)補正を適用します。(4) 正規性が満たされない場合:Kruskal-Wallis 検定(独立群)または Friedman 検定(反復測定)を使用します。
線形回帰の仮定:(1) 残差対当てはめ値プロットで線形性を確認します。(2) Durbin-Watson 検定で独立性を確認します(1.5-2.5 が許容範囲です)。(3) Breusch-Pagan 検定と尺度位置プロットで等分散性を確認します。(4) Q-Q プロットと Shapiro-Wilk 検定で残差の正規性を確認します。(5) VIF で多重共線性を確認します(>10 = 深刻、>5 = 中程度)。
ロジスティック回帰の仮定:(1) 独立性。(2) 連続予測変数に対する対数オッズの線形性(Box-Tidwell 検定)。(3) 完全な多重共線性がないこと(VIF)。(4) 十分なサンプルサイズ(予測変数あたり最低 10-20 件のイベント)。
専門的な検定カテゴリー
主な意思決定フローチャートに加えて、特定のデータ型に対応する専門的な検定群がいくつかあります。
生存時間/イベント発生までの時間の分析:
- ログランク検定:グループ間の生存曲線を比較します(ノンパラメトリック)
- Cox比例ハザードモデル:共変量を用いてイベント発生までの時間をモデル化します。比例ハザードを仮定します
- パラメトリック生存時間モデル:既知の分布形に対して、ワイブル分布、指数分布、対数正規分布を使用します
- アウトカムがイベント(死亡、再発、故障)までの時間で、打ち切りの可能性がある場合に使用します
カウントアウトカムモデル:
- ポアソン回帰:平均と分散がほぼ等しいカウントデータに使用します
- 負の二項回帰:過分散のカウントデータ(分散 > 平均)に使用します
- ゼロ過剰モデル:ポアソン分布/負の二項分布で予測される数を超えるゼロがある場合に使用します
- アウトカムがカウント(イベント、インシデント、発生回数)である場合に使用します
一致度と信頼性:
- Cohenのカッパ係数:カテゴリ評価における評価者間の一致度(評価者2名)
- Fleissのカッパ係数/Krippendorffのアルファ係数:評価者が2名を超える場合の一致度
- 級内相関係数(ICC):連続評価の信頼性
- Cronbachのアルファ係数:複数項目尺度の内的一貫性
- Bland-Altman分析:2つの測定方法間の一致度(連続値)
- 測定の信頼性や評価者間の一貫性を評価する場合に使用します
カテゴリデータの拡張:
- McNemar検定:対応のある二値アウトカム(2x2)
- CochranのQ検定:対応のある二値アウトカム(3条件以上)
- Cochran-Armitage傾向検定:分割表における順序カテゴリ
意思決定フレームワーク
検定選択フローチャート
What is your research question?
|
+-- Comparing GROUPS on a continuous outcome?
| |
| +-- How many groups?
| | +-- 2 groups
| | | +-- Independent -> Independent t-test (or Mann-Whitney U)
| | | +-- Paired/repeated -> Paired t-test (or Wilcoxon signed-rank)
| | +-- 3+ groups
| | +-- Independent -> One-way ANOVA (or Kruskal-Wallis)
| | +-- Repeated -> Repeated-measures ANOVA (or Friedman)
| |
| +-- Multiple factors? -> Factorial ANOVA / Mixed ANOVA
| +-- With covariates? -> ANCOVA
|
+-- Testing a RELATIONSHIP between variables?
| |
| +-- Both continuous?
| | +-- Normal -> Pearson correlation
| | +-- Non-normal or ordinal -> Spearman correlation
| |
| +-- Predicting continuous outcome?
| | +-- 1 predictor -> Simple linear regression
| | +-- Multiple predictors -> Multiple linear regression
| |
| +-- Predicting categorical outcome?
| | +-- Binary -> Logistic regression
| | +-- Ordinal -> Ordinal logistic regression
| |
| +-- Predicting count outcome?
| | +-- Equidispersed -> Poisson regression
| | +-- Overdispersed -> Negative binomial regression
| | +-- Excess zeros -> Zero-inflated Poisson/NB
| |
| +-- Time-to-event outcome?
| +-- Compare survival curves -> Log-rank test
| +-- With covariates -> Cox proportional hazards
|
+-- Testing ASSOCIATION between categorical variables?
| +-- Expected cell count >= 5 -> Chi-square test
| +-- Expected cell count < 5 -> Fisher's exact test
| +-- Ordered categories -> Cochran-Armitage trend test
| +-- Paired categories -> McNemar's test
|
+-- Assessing AGREEMENT / RELIABILITY?
+-- Categorical, 2 raters -> Cohen's kappa
+-- Categorical, >2 raters -> Fleiss' kappa
+-- Continuous ratings -> ICC
+-- Two measurement methods -> Bland-Altman analysis
+-- Internal consistency -> Cronbach's alpha
クイックリファレンステーブル
| 研究上の問い | データ型 | 正規性あり? | 検定 | ノンパラメトリックな代替手法 |
|---|---|---|---|---|
| 独立した2群 | 連続 | はい | 独立t検定 | Mann-Whitney U検定 |
| 対応のある2群 | 連続 | はい | 対応のあるt検定 | Wilcoxon符号付順位検定 |
| 独立した3群以上 | 連続 | はい | 一元配置ANOVA | Kruskal-Wallis検定 |
| 反復測定の3群以上 | 連続 | はい | 反復測定ANOVA | Friedman検定 |
| 2変数 | 連続 | はい | Pearsonのr | Spearmanのrho |
| 連続値の予測 | 混合 | -- | 線形回帰 | -- |
| 二値の予測 | 混合 | -- | ロジスティック回帰 | -- |
| カウントの予測 | カウント | -- | ポアソン回帰/負の二項回帰 | -- |
| イベント発生までの時間 | 生存時間 | -- | Cox PH/ログランク検定 | -- |
| 2つのカテゴリ変数 | カテゴリ | -- | カイ二乗検定/Fisherの正確確率検定 | -- |
| 評価者間の一致度 | カテゴリ | -- | Cohenのカッパ係数/Fleissのカッパ係数 | -- |
| 方法間の一致度 | 連続 | -- | Bland-Altman分析/ICC | -- |
ベストプラクティス
- 可能であれば分析を事前登録し、確認的な知見と探索的な知見を区別します。データ収集前に、主要アウトカム、検定、補正方法を指定します
- 結果を解釈する前に、必ず仮定を確認します。正規性検定(Shapiro-Wilk)、等分散性検定(Levene)、残差診断を実施します。仮定が満たされている場合も、結果を記録します
- すべての検定について、信頼区間とともに効果量を報告します。p 値だけでは不十分です。効果量から実用上の重要性が分かります
- 有意でない結果も含め、予定していた分析をすべて報告します。選択的な報告は偽陽性率を高めます
- 適切な多重比較補正を使用します。Bonferroni(保守的)、Holm(ステップダウン方式で、より保守的ではありません)、または FDR/Benjamini-Hochberg(検定数が多い場合)を使用します。比較の数と許容できる誤り率に基づいて選択します
- 分析の前後にデータを可視化します。群間比較には箱ひげ図、相関には散布図、回帰診断には残差プロットを使用します
- 感度分析を実施し、頑健性を評価します。外れ値を除外した場合、異なる変換を適用した場合、または別の検定を使用した場合に再実行します
- アンチパターン — p ハッキング:p < .05 になるまで複数のアウトカム、サブグループ、またはモデル仕様を検定すると、偽陽性が増加します。これを避けるために事前登録します
- アンチパターン — HARKing(結果を知った後で仮説を立てること):探索的な知見を確認的な知見として提示すると、科学的な誠実性が損なわれます
- アンチパターン — 非有意性の誤った解釈:H0 を棄却できなかったからといって、H0 が真であるとは限りません。帰無仮説を支持するには、ベイズ法または同等性検定を使用します
よくある落とし穴
-
p 値を、仮説が真である確率として誤って解釈すること。p 値が測るのは P(data | H0) であり、P(H0 | data) ではありません。回避方法:「帰無仮説が真だとした場合、この極端さのデータが観察される確率は p = ... です」のように、正確な表現を使います
-
統計的有意性と実用上の重要性を混同すること。サンプルサイズが大きいと、ごく小さな効果でも有意になることがあります。回避方法:p 値と併せて、常に効果量を報告して解釈します
-
有意でない結果が出た後に、事後検出力分析を実施すること。事後検出力は p 値の数学的関数であり、新たな情報は得られません。回避方法:代わりに感度分析を使い、検出力 80% で研究が検出できる効果量を判断します
-
仮定違反を無視し、パラメトリック検定を続行すること。回避方法:体系的に仮定を確認します。仮定が満たされない場合は、Welch の補正、ノンパラメトリックな代替手法、または変換を使用します
-
補正なしで多重比較を行うこと。alpha = .05 で 20 回検定すると、少なくとも 1 つの偽陽性が生じる確率は約 64% です。回避方法:Bonferroni、Holm、または FDR 補正を適用します。補正前と補正後の p 値を両方報告します
-
順序データを連続データとして扱うこと。Likert 尺度は順序尺度であり、平均値と標準偏差は間隔が等しいことを前提とします。回避方法:ノンパラメトリック検定(Mann-Whitney、Kruskal-Wallis)または順序回帰を使用します
-
欠損データのパターンを無視すること。リストワイズ削除は MCAR を前提としますが、この前提が成り立つことはほとんどありません。回避方法:欠損の仕組み(MCAR、MAR、MNAR)を評価します。MAR データには多重代入法を使用します
-
相関と因果関係を混同すること。観察研究では、効果量にかかわらず因果関係を確立できません。回避方法:ランダム割り当てを伴う実験デザインでのみ、因果を示す表現を使用します
-
有意でない結果を報告しないこと。出版バイアスやファイルドロワー効果によって、文献が歪められます。回避方法:事前登録した分析をすべて報告します。登録報告の利用も検討します
-
有意性を「高める」ために片側検定を使うこと。片側検定は、強い方向性の仮説に基づいて事前に指定する必要があります。回避方法:原則として両側検定を使用します。事前に正当化できる場合にのみ片側検定を使用します
ワークフロー
標準分析パイプライン
-
研究課題と仮説を定義する
- H0 と H1 を明示します
- 主要アウトカムと共変量を指定します
-
統計検定を選択する(上記の意思決定フレームワークを使用)
- データ型、研究デザイン、仮定に合った検定を選びます
- 必要に応じて多重比較の補正を計画します
-
事前検出力分析を実施する
- 目標とする効果量を指定します(文献または臨床的な重要性に基づく)
- alpha = .05、power = .80(最低値)を設定し、必要な n を決定します
- ライブラリ:
statsmodels.stats.power、pingouin
-
データを確認し、クリーニングする
- 欠損データのパターン(MCAR/MAR/MNAR)を確認します
- 外れ値を特定します(IQR 法:Q1 - 1.5IQR / Q3 + 1.5IQR、または z スコア > 3)
- 変数の型とコーディングを確認します
- 元の
assumption_checks.pyスクリプトでは、正規性、等質性、外れ値を可視化しながら自動検出できます
-
仮定を確認する(上記の検定別仮定確認ワークフローを参照)
- 正規性:Shapiro-Wilk 検定と Q-Q プロット(n > 50 では視覚的な確認を優先)
- 等質性:Levene 検定と箱ひげ図
- 線形性:残差プロット(回帰の場合)
- 球面性:Mauchly 検定(反復測定の場合)
- 結果と是正措置を記録します
-
主要な分析を実行する
- 適切なライブラリ(scipy.stats、pingouin、statsmodels)を使って、計画した検定を実行します
- 効果量と信頼区間を算出します
- ベイズ分析の場合:事前分布を指定し、MCMC を実行して、収束を確認します(
references/bayesian_statistics.mdを参照)
-
事後分析と二次分析を実施する
- 事後のペアワイズ比較(Tukey HSD、Bonferroni)
- 感度分析(外れ値の除去、代替手法)
- 探索的分析(明確にラベル付けします)
-
APA 形式で結果を報告する
- 記述統計量(群ごとの M、SD、n)
- 検定統計量、自由度、正確な p 値
- 信頼区間付きの効果量
- テンプレートについては
references/reporting_standards.mdを参照してください
同梱リソース
-
references/effect_sizes_and_power.md-- 効果量(Cohen's d、Hedges' g、Glass's delta、eta-squared、omega-squared、partial eta-squared、phi 係数、標準化ベータ、f-squared、Cramer's V、オッズ比)の計算、解釈、報告に関する詳細ガイドです。事前検出力分析、感度分析、相関の検出力分析について、コード例とともに説明しています。元の 582 行の内容を要約しています。 -
references/bayesian_statistics.md-- ベイズ分析の包括的なガイドです。ベイズの定理、事前分布の指定、ROPE(実質的同等性領域)、事前分布の感度分析、ベイズ t 検定/ANOVA/相関/回帰、階層モデル、モデル比較(WAIC/LOO)、収束診断を取り上げています。元の 662 行の内容を要約しています。 -
references/reporting_standards.md-- t 検定、ANOVA、回帰、相関、カイ二乗、ノンパラメトリック、ベイズ分析の APA 形式の報告テンプレート、事前登録のガイダンス、方法セクションのテンプレート(参加者、研究デザイン、測定)、帰無結果の報告、報告用チェックリストを掲載しています。元の 470 行の内容を要約しています。
完全に統合されたファイル(別途参照ファイルなし)
-
test_selection_guide.md(原文130行) -- Decision Framework(フローチャート+クイックリファレンステーブル)と、Key Concepts の Specialized Test Categories サブセクションに完全に統合しました。統合後の内容は、フローチャート(約35行)+クイックリファレンステーブル(約15行)+Specialized Test Categories(約35行)で、原文のすべての機能をカバーする約85行です。サンプルサイズの考慮事項、多重比較、欠損データに関する原文の内容は、Best Practices と Common Pitfalls に統合しました。省略した内容:研究デザインに関する考慮事項(RCT、観察研究、クラスター化データ)-- 一般的なガイダンスは statsmodels-statistical-modeling スキルで扱われています。 -
assumptions_and_diagnostics.md(原文370行) -- Key Concepts(Assumptions Overview + Test-Specific Assumption Workflows)と Workflow Steps 4-5 に完全に統合しました。統合後の内容は、Assumptions Overview(約12行)+ Test-Specific Assumption Workflows(約20行)+ Workflow Steps 4-5(約16行)で、約48行です。原文には、各仮定の検定に関する詳細なコードブロックが含まれていましたが、これはスキルではなく Knowhow であるため、コードを再掲せずに参照しています。主要な診断閾値(VIF > 10、Durbin-Watson 1.5-2.5、分散比 < 2-3)は維持しています。省略した内容:個々の検定(正規性、等分散性、線形性、ロジスティック回帰の診断)に関する膨大な Python コードブロック -- scipy.stats および pingouin のドキュメントを参照してください。サンプルサイズの経験則は Workflow Step 3 で扱っています。
スクリプトの扱い
assumption_checks.py(540行) -- 6つの関数が含まれています:check_normality()、check_normality_per_group()、check_homogeneity_of_variance()、check_linearity()、detect_outliers()、comprehensive_assumption_check()。Knowhow の項目であるため、スクリプトの関数はインラインで再掲せず、Workflow Step 4 で参照しています。主要な機能(Shapiro-Wilk、Levene's、IQR/z-score による外れ値検出、Q-Q プロット)は Assumptions Overview と Test-Specific Assumption Workflows で説明しています。自動検定が必要なユーザーは、説明されているパターンに従って scipy.stats と pingouin を直接使用してください。
意図的に省略した内容
- 時系列手法(ARIMA、ACF/PACF)-- 統計的検定の中核的な範囲を超える専門的なトピック
- 混合効果モデル/GEE -- statsmodels-statistical-modeling スキルで扱われています
- ブートストラップ検定と置換検定 -- 簡単に言及していますが、詳細な実装は計算統計の資料に委ねています
さらに読む
- Cohen, J. (1988). Statistical Power Analysis for the Behavioral Sciences(第2版)
- Field, A. (2013). Discovering Statistics Using IBM SPSS Statistics(第4版)
- Gelman, A., & Hill, J. (2006). Data Analysis Using Regression and Multilevel/Hierarchical Models
- Kruschke, J. K. (2014). Doing Bayesian Data Analysis(第2版)
- APA Publication Manual:https://apastyle.apa.org/
- Cross Validated(統計に関するQ&A):https://stats.stackexchange.com/
関連スキル
- statsmodels-statistical-modeling -- OLS、GLM、Logit、時系列モデルのプログラムによる実装
- pymc-bayesian-modeling -- MCMC サンプリングによる本格的なベイズモデリング
- scikit-learn-machine-learning -- 予測モデリング、交差検証、分類
- matplotlib-scientific-plotting -- 出版品質の統計図表の作成
- hypothesis-generation -- 統計的検定の前に行う体系的な仮説の定式化