BaşlayınÜcretsiz Başlayın

Hipotez testi - Ortalama farkı

A ve B'den alınan ortalama bağışlarda bir fark olduğu hipotezini test etmek istiyoruz. Önceden, verilerin tek bir permütasyonunu nasıl üreteceğini öğrenmiştin. Şimdi, ortalama farkının sıfır dağılımını (null distribution) üretecek ve ardından p-değerini hesaplayacağız.

Sıfır dağılımı için önce birden çok permütasyonlu veri kümesi üretiyor ve her biri için ortalama farkını saklıyoruz. Ardından, test istatistiğini orijinal veri kümesindeki ortalama farkı olarak hesaplıyoruz. Son olarak, p-değeri'ni, farkın test istatistiğinin mutlak değerinden büyük veya ona eşit olduğu durumların payının iki katını alarak yaklaşıklıyoruz (çift yönlü hipotez). Örneğin 0,05'ten küçük bir p-değeri istatistiksel anlamlılığı gösterebilir.

Bu egzersiz

Python'da İstatistiksel Benzetim

kursunun bir parçasıdır
Kursu Görüntüle

Egzersiz talimatları

  • donations_A ve donations_B için birden çok permütasyon üret ve bunu perm değişkenine ata.
  • samples'ı, permuted_A_datasets ve permuted_B_datasets'in ortalamaları arasındaki farka eşitle. Her veri kümesi için ayrı bir ortalama elde etmek için axis=1 ayarlıyoruz, genel bir ortalama yerine.
  • test_stat'i, donations_A ve donations_B'nin ortalamaları arasındaki farka eşitle.
  • p-değeri p_val'i, samples içindeki değerlerden mutlak test_stat değerinden büyük veya ona eşit olanların payının iki katı olarak hesapla.

Uygulamalı interaktif egzersiz

Bu örnek kodu tamamlayarak bu egzersizi bitirin.

# Generate permutations equal to the number of repetitions
perm = np.array([np.random.____(len(____) + len(____)) for i in range(reps)])
permuted_A_datasets = data[perm[:, :len(donations_A)]]
permuted_B_datasets = data[perm[:, len(donations_A):]]

# Calculate the difference in means for each of the datasets
samples = np.mean(____, axis=1) - np.mean(____, axis=1)

# Calculate the test statistic and p-value
test_stat = ____
p_val = 2*np.sum(____ >= np.abs(____))/reps
print("p-value = {}".format(p_val))
Kodu Düzenle ve Çalıştır