兩樣本自助法平均值差異的假設檢定
我們現在要檢定的假設是:青蛙 A 與青蛙 B 的平均撞擊力相同,但分配不一定相同;這在置換檢定中同樣無法處理。
要進行兩樣本的自助法檢定,我們會把「兩個」陣列都平移到相同的平均值,因為我們正在模擬它們的平均值實際上相等的情境。接著,從這兩個平移後的陣列各自進行自助抽樣,並計算平均值差。這就形成了一個自助法重抽複本,而我們會產生很多個。p 值是指這些複本中,平均值差大於或等於實際觀察值的比例。
物件 forces_concat 與 empirical_diff_means 已經在你的命名空間中。
本練習屬於課程
Statistical Thinking in Python(第 2 部分)
練習說明
- 使用
np.mean()計算所有撞擊力(forces_concat)的平均值。 - 為
force_a和force_b「兩者」產生平移後的資料集,使每個資料集的平均值都等於串接後撞擊力陣列的平均值。 - 對這兩個平移後的陣列,各自產生 10,000 個平均值的自助法重抽複本。
- 透過用青蛙 A 的平移後平均值重抽複本減去青蛙 B 的平移後平均值重抽複本,計算平均值差的自助法重抽複本。
- 根據你的自助法重抽複本計算並列印 p 值。
動手互動練習
試著完成這個範例程式碼,體驗一下這個練習。
# Compute mean of all forces: mean_force
mean_force = ____
# Generate shifted arrays
force_a_shifted = force_a - np.mean(force_a) + mean_force
force_b_shifted = ____
# Compute 10,000 bootstrap replicates from shifted arrays
bs_replicates_a = draw_bs_reps(____, ____, ____)
bs_replicates_b = draw_bs_reps(____, ____, ____)
# Get replicates of difference of means: bs_replicates
bs_replicates = ____
# Compute and print p-value: p
p = ____ / ____
print('p-value =', p)