Tek bir permütasyon üretme
Sonraki birkaç egzersizde, permütasyon testi kullanarak bir anlamlılık testi çalıştıracağız. Videoda tartıştığımız gibi, iki tasarımın — A ve B — ürettiği bağışlarda bir fark olup olmadığını görmek istiyoruz. Her iki sürümü de birkaç gün çalıştırdığını ve A için 500, B için 700 bağış topladığını ve bunları donations_A ve donations_B değişkenlerinde sakladığını varsayalım.
Önce ortalamalar farkı için bir sıfır dağılımı (null distribution) üretmemiz gerekiyor. Bunu, veri kümesinin birden çok permütasyonunu üreterek ve her birinde ortalamalar farkını hesaplayarak başaracağız.
Önce, tek bir permütasyon üretelim ve permüte edilmiş veri kümesi için ortalamalar farkını hesaplayalım.
Bu egzersiz
Python'da İstatistiksel Benzetim
kursunun bir parçasıdırEgzersiz talimatları
donations_Avedonations_Bdizilerininp.concatenate()ile birleştir vedataolarak ata.np.random.permutation()kullanarak tek bir permütasyon al vepermdeğişkenine ata.permuted_Avepermuted_B'nin ortalama değerlerinin farkınıdiff_in_meansolarak hesapla.
Uygulamalı interaktif egzersiz
Bu örnek kodu tamamlayarak bu egzersizi bitirin.
# Concatenate the two arrays donations_A and donations_B into data
len_A, len_B = len(donations_A), len(donations_B)
data = ____([donations_A, donations_B])
# Get a single permutation of the concatenated length
perm = ____(len(donations_A) + len(donations_B))
# Calculate the permutated datasets and difference in means
permuted_A = data[perm[:len(donations_A)]]
permuted_B = data[perm[len(donations_A):]]
diff_in_means = ____
print("Difference in the permuted mean values = {}.".format(diff_in_means))