K-S çoğaltımları çizmek
Şimdi, hedef dağılım f'ten Kolmogorov-Smirnov çoğaltımları çekmek için bir fonksiyona ihtiyacın var. Bunu yapmak için draw_ks_reps(n, f, args=(), size=10000, n_reps=10000) imzasına sahip bir fonksiyon yaz. Burada, n veri noktası sayısıdır ve f, hedef KDA'dan örnek üretmek için kullanacağın fonksiyondur. Örneğin, Üstel (Exponential) dağılıma karşı test etmek için f olarak np.random.exponential geçirirsin. Bu fonksiyon genellikle argümanlar alır; bunlar bir demet (tuple) olarak geçirilmelidir. Yani, ortalaması x_mean olan bir Üstel dağılımdan örnek almak istersen args=(x_mean,) anahtar sözcüğünü kullanırsın. size ve n_reps anahtar sözcük argümanları sırasıyla hedef dağılımdan alınacak örnek sayısını ve çekilecek çoğaltım sayısını ifade eder.
Bu egzersiz
İstatistiksel Düşünmede Vaka Çalışmaları
kursunun bir parçasıdırEgzersiz talimatları
- Aşağıdakileri yapan
draw_ks_reps(n, f, args=(), size=10000, n_reps=10000)imzalı bir fonksiyon yaz.- Hedef dağılım
f'tensizeadet örnek üret.argsdeğerlerini örnekleme fonksiyonuna geçirmek içinf(*args, size=size)yapısını kullanman gerektiğini unutma. Sonucux_folarak sakla. - Çoğaltım dizisini,
reps,n_repsuzunluğunda boş bir dizi olarak başlat. - Aşağıdakileri
n_repskez yapmak için birfordöngüsü yaz.f'tennadet örnek çek. Yine, fonksiyon çağrında*argskullan. Sonucux_sampdeğişkeninde sakla.- Bir önceki egzersizde yazdığın ve kullanışlı şekilde
dcstmodülünde saklanandcst.ks_stat()fonksiyonunu kullanarak K-S istatistiğini hesapla. Sonucurepsdizisine kaydet.
repsdizisini döndür.
- Hedef dağılım
Uygulamalı interaktif egzersiz
Bu örnek kodu tamamlayarak bu egzersizi bitirin.
____ ____:
# Generate samples from target distribution
x_f = ____
# Initialize K-S replicates
reps = ____
# Draw replicates
for i in range(n_reps):
# Draw samples for comparison
x_samp = ____
# Compute K-S statistic
____[i] = ____
return reps