Pearson の相関に対する仮説検定
女性の非識字率と合計特殊出生率の間に見られた相関は、偶然の産物かもしれません。実際には、各国の出生率は非識字率とはまったく独立である可能性があります。この仮説を検定しましょう。そのために、非識字率の値だけを置換し、出生率の値は固定したままにします。これは両者が完全に独立であるという仮説をシミュレーションします。各置換について Pearson の相関係数を計算し、置換レプリケートのうち、観測された相関より大きいものがいくつあるかを評価します。
Pearson の相関係数を計算するための関数 pearson_r() は、このコースの前編で作成したものがすでに用意されています。
この演習はコースの一部です
Pythonで学ぶ統計思考(パート2)
演習の手順
illiteracyとfertilityの観測された Pearson の相関係数を計算します。- 置換レプリケートを保存するための配列を初期化します。
forループを書いて 10,000 個のレプリケートを生成します。np.random.permutation()を使ってilliteracyの測定値を置換します。- 置換した非識字率配列
illiteracy_permutedとfertilityの Pearson の相関を計算します。
- レプリケートから p 値を計算し、表示します。
実践的なインタラクティブ演習
このサンプルコードを完成させて、この演習に挑戦してみましょう。
# Compute observed correlation: r_obs
r_obs = ____
# Initialize permutation replicates: perm_replicates
perm_replicates = np.empty(10000)
# Draw replicates
for ____ in ____:
# Permute illiteracy measurments: illiteracy_permuted
illiteracy_permuted = ____
# Compute Pearson correlation
perm_replicates[i] = ____
# Compute p-value: p
p = ____
print('p-val =', p)