F分布とは?分散の比較を支える確率分布

1. はじめに:F分布とは?

  • F分布の基本的な説明
    • 分布の特徴:非対称で右に長い裾を持つ
    • カール・ピアソンによって定義され、2つの独立なχ²分布に基づく比率の分布として登場
    • 主な用途:
      • 分散分析(ANOVA)
      • 母分散の比較

2. F分布の数学的定義

  • F統計量の定義
    • F = ( (S1² / ν₁) / (S2² / ν₂) )
    • S1² と S2² は2つのサンプルの不偏分散
    • ν₁, ν₂はそれぞれの自由度
  • F分布が従う条件
    • 母集団は正規分布に従う
    • 2つの標本は互いに独立

3. F分布の具体例:分散分析(ANOVA)

  • 分散分析の概要
    • 3つ以上のグループの平均を比較する手法
    • F分布を用いることで、各グループの平均の違いが偶然によるものかどうかを判定

ANOVAの数式:

  • F = (グループ間分散 / グループ内分散)
  • 帰無仮説:すべてのグループの平均は等しい
  • 例題として、複数の広告戦略によるユーザ獲得数の違いを分析

4. F分布の性質と特徴

  • F分布のパラメータ:自由度(ν₁, ν₂)
    • ν₁が大きいほど分布は鋭くなり、ν₂が大きいほど裾が短くなる
  • 期待値と分散:
    • 期待値: E[F]=ν2​/(ν2​−2) (ν₂ > 2のとき)
    • 分散: Var[F] = [2 * (ν₂²) * (ν₁ + ν₂ – 2)] / [ν₁ * (ν₂ – 2)² * (ν₂ – 4)] (ν₂ > 4のとき)

5. PythonでF検定を実装する

  • scipy.stats.fを使ったF分布の計算
  • 2つのサンプル間でF検定を実施するコード例
from scipy.stats import f

# 自由度の設定
dof1 = 10 # サンプル1の自由度
dof2 = 15 # サンプル2の自由度

# F値の計算(例: F = 2.5)
f_value = 2.5

# p値の計算
p_value = 1 - f.cdf(f_value, dof1, dof2)

print(f"F値: {f_value}, p値: {p_value}")
  • 解説:F値がどのようにp値に変換され、帰無仮説を棄却するかどうかの判断に用いられるか説明

6. F分布を使った検定の注意点

  • 正規性が重要:サンプルが正規分布に従う必要がある
  • 異常値に敏感:異常値があると検定結果に影響を与える
  • サンプルサイズが大きいほど、F検定の信頼性が向上

7. まとめ

  • F分布は統計分析で広く使われる強力なツール
  • 分散分析や分散の比較において不可欠
  • Pythonを使うことで実務でもすぐに使えるようになる
上部へスクロール