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

Permütasyon örneklemesini görselleştirme

Permütasyon örneklemenin nasıl çalıştığını daha iyi görmek için bu egzersizde permütasyon örnekleri üretecek ve bunları görsel olarak inceleyeceksin.

Yine Sheffield Hava Durumu İstasyonu verilerini kullanacağız; bu kez Haziran (kurak bir ay) ve Kasım (yağışlı bir ay) aylarındaki aylık yağış miktarlarına bakacağız. Dağılımlarının farklı olabileceğini bekliyoruz; bu yüzden, özdeş dağıtılmış olsalardı ECDF'lerinin nasıl görüneceğini görmek için permütasyon örnekleri alacağız.

Veriler NumPy dizileri rain_june ve rain_november içinde saklı.

Hatırlatma olarak, permutation_sample() fonksiyon imzası permutation_sample(data_1, data_2) şeklindedir ve dönüş değeri permuted_data[:len(data_1)], permuted_data[len(data_1):] olur; burada permuted_data = np.random.permutation(np.concatenate((data_1, data_2))).

Bu egzersiz, kursun bir parçasıdır

Python ile İstatistiksel Düşünme (Bölüm 2)

Kursa Göz Atın

Egzersiz talimatları

  • 50 permütasyon örneği üretmek, bunların ECDF'lerini hesaplamak ve çizmek için bir for döngüsü yaz.
    • permutation_sample() fonksiyonunu kullanarak rain_june ve rain_november'dan bir permütasyon örneği çifti üret.
    • Her iki permütasyon örneği için ecdf() fonksiyonunu kullanarak ECDF'nin x ve y değerlerini üret.
    • İlk permütasyon örneğinin (x_1 ve y_1) ECDF'sini nokta olarak çiz. İkinci permütasyon örneği (x_2 ve y_2) için de aynısını yap.
  • rain_june ve rain_november verileri için ECDF'lerin x ve y değerlerini üret ve ECDF'leri sırasıyla color='red' ve color='blue' anahtar argümanlarıyla çiz.
  • Eksenleri etiketle, yüzde 2 kenar boşluğu ayarla ve grafiği göster. Bunlar senin için yapıldı; grafiği görmek için sadece gönder tuşuna bas!

Uygulamalı etkileşimli egzersiz

Bu egzersizi bu örnek kodu tamamlayarak deneyin.

for _ in ____:
    # Generate permutation samples
    perm_sample_1, perm_sample_2 = ____


    # Compute ECDFs
    x_1, y_1 = ____
    x_2, y_2 = ____

    # Plot ECDFs of permutation sample
    _ = plt.plot(____, ____, marker='.', linestyle='none',
                 color='red', alpha=0.02)
    _ = plt.plot(____, ____, marker='.', linestyle='none',
                 color='blue', alpha=0.02)

# Create and plot ECDFs from original data
x_1, y_1 = ____
x_2, y_2 = ____
_ = plt.plot(x_1, y_1, marker='.', linestyle='none', color='red')
_ = plt.plot(x_2, y_2, marker='.', linestyle='none', color='blue')

# Label axes, set margin, and show plot
plt.margins(0.02)
_ = plt.xlabel('monthly rainfall (mm)')
_ = plt.ylabel('ECDF')
plt.show()
Kodu Düzenle ve Çalıştır