Arı sperm sayıları üzerinde bootstrap hipotez testi
Şimdi şu hipotezi test edeceksin: Ortalama olarak, neonicotinoid böcek ilacı ile muamele edilen erkek arıların, edilmemiş erkek arılara kıyasla mililitre başına aktif sperm sayısı aynıdır. Test istatistiği olarak ortalamaların farkını kullanacaksın.
Referans olması için, bölüm 2'de yazdığın draw_bs_reps() fonksiyonunun çağrı imzası draw_bs_reps(data, func, size=1) şeklindedir.
Bu egzersiz, kursun bir parçasıdır
Python ile İstatistiksel Düşünme (Bölüm 2)
Egzersiz talimatları
controlgrubunun ortalama canlı sperm sayısındantreatedgrubunun ortalamasını çıkar.- Tüm canlı sperm sayılarının ortalamasını hesapla. Bunu yapmak için önce
controlvetreateddizilerini birleştir (np.concatenate()), sonra birleştirilmiş dizinin ortalamasını al. - Hem
controlhem detreatediçin, aynı ortalamaya sahip olacak şekilde kaydırılmış (shifted) veri kümeleri üret. Bu adım senin için zaten yapıldı. - İki kaydırılmış dizi için de ortalamanın 10.000 bootstrap tekrarı üret. Kendi
draw_bs_reps()fonksiyonunu kullan. - Ortalamalar farkının bootstrap tekrarlarını hesapla.
- p-değerini hesaplayıp yazdıran kod hazır. Sonucu görmek için Yanıtı Gönder!
Uygulamalı etkileşimli egzersiz
Bu egzersizi bu örnek kodu tamamlayarak deneyin.
# Compute the difference in mean sperm count: diff_means
diff_means = ____
# Compute mean of pooled data: mean_count
mean_count = ____
# Generate shifted data sets
control_shifted = control - np.mean(control) + mean_count
treated_shifted = treated - np.mean(treated) + mean_count
# Generate bootstrap replicates
bs_reps_control = ____(____,
np.mean, size=10000)
bs_reps_treated = ____(____,
np.mean, size=10000)
# Get replicates of difference of means: bs_replicates
bs_replicates = ____
# Compute and print p-value: p
p = np.sum(bs_replicates >= np.mean(control) - np.mean(treated)) \
/ len(bs_replicates)
print('p-value =', p)