正規性の検定

Pythonで学ぶ推測の基礎

Paul Savala

Assistant Professor of Mathematics

米国男性の身長

平均180センチ、最小160センチ、最大200センチで、おおむね正規分布のヒストグラム。

Pythonで学ぶ推測の基礎

モデルの残差

横軸が勤続年数、縦軸が年収の散布図。全体に正の直線的傾向があり、赤の当てはめ直線あり。

予測線の上下に残差が均等に分布することを期待

Pythonで学ぶ推測の基礎

モデルの残差

横軸が「残差(誤差)」、縦軸が「度数」のヒストグラム。−1万付近と+3万付近にモードがある二峰性。

Pythonで学ぶ推測の基礎

正規分布の活用例

  • 母数検定:正規性を仮定する仮説検定
  • 平均の比較に t 検定
    • 標本平均が正規分布と仮定
    • 満たさないと結論は無効
Pythonで学ぶ推測の基礎

横軸が6万〜9万5千の給与、縦軸が度数のヒストグラム。概ね正規形。

Pythonで学ぶ推測の基礎

Anderson–Darling 検定(正規性)

  • 正規性の仮定を検証

$H_0$: データは正規分布に従う

$H_a$: データは正規分布に従わない

Pythonで学ぶ推測の基礎

SciPy での Anderson–Darling 検定

result = stats.anderson(police_df['Annual Salary'])

result.statistic
27.41
result.critical_values
[0.574, 0.654, 0.784, 0.915, 1.088]
result.significance_level[result.statistic > result.critical_values]
[15.  10.   5.   2.5  1. ]
Pythonで学ぶ推測の基礎

正規分布への当てはめ

mu, std = stats.norm.fit(police_df['Annual Salary'])

estimated_pct_under_70k = stats.norm.cdf(70000, loc=mu, scale=std)
print(estimated_pct_under_70k)
0.27
actual_under_70k = police_df[police_df['Annual Salary'] < 70000]

print(len(actual_under_70k) / len(police_df))
0.20
Pythonで学ぶ推測の基礎

Passons à la pratique !

Pythonで学ぶ推測の基礎

Preparing Video For Download...