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

Permütasyon örnekleri oluşturma

Son egzersizde gördüğün gibi, semi_times ve final_times dizilerindeki karşılık gelen girdileri rastgele yer değiştirerek bir permütasyon örneği üretmemiz gerekiyor. Rastgele indekslerde a ve b'deki girdilerin yerlerini değiştirilmiş olarak döndüren swap_random(a, b) imzasına sahip bir fonksiyon yaz.

Bu egzersiz

İstatistiksel Düşünmede Vaka Çalışmaları

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

Egzersiz talimatları

  • Aşağıdakileri yapan swap_random(a, b) imzasına sahip bir fonksiyon tanımla.
    • Girdi dizileriyle aynı uzunlukta, her girdisi %50 olasılıkla True olan bir swap_inds dizisi oluştur. İpucu: size=len(a) anahtar argümanı ile np.random.random() kullan. Sonuçtaki her bir değer 0.5'ten küçükse True olmalı.
    • np.copy() kullanarak sırasıyla a_out ve b_out adlı a ve b kopyalarını oluştur.
    • Uygun girdileri b'den a_out'a ve a'dan b_out'a taşımak için swap_inds dizisiyle Boole indeksleme kullan.
    • a_out ve b_out'u döndür.

Uygulamalı interaktif egzersiz

Bu örnek kodu tamamlayarak bu egzersizi bitirin.

def ____(____, ____):
    """Randomly swap entries in two arrays."""
    # Indices to swap
    swap_inds = ____ < ____
    
    # Make copies of arrays a and b for output
    a_out = ____
    b_out = ____
    
    # Swap values
    ____[____] = ____[____]
    ____[____] = ____[____]

    return a_out, b_out
Kodu Düzenle ve Çalıştır