MulaiMulai sekarang secara gratis

Membuat sampel permutasi

Seperti yang Anda kerjakan pada latihan sebelumnya, kita perlu membuat sampel permutasi dengan menukar secara acak entri yang bersesuaian dalam array semi_times dan final_times. Tulislah fungsi dengan tanda tangan swap_random(a, b) yang mengembalikan array di mana indeks acak memiliki entri pada a dan b yang telah ditukar.

Latihan ini adalah bagian dari kursus

Studi Kasus dalam Pemikiran Statistik

Lihat Kursus

Petunjuk latihan

  • Definisikan fungsi dengan tanda tangan swap_random(a, b) yang melakukan hal berikut.
    • Buat array swap_inds dengan panjang yang sama seperti array masukan, di mana setiap entri bernilai True dengan probabilitas 50/50. Petunjuk: Gunakan np.random.random() dengan argumen kata kunci size=len(a). Setiap entri pada hasil yang kurang dari 0.5 harus bernilai True.
    • Buat salinan a dan b, masing-masing bernama a_out dan b_out menggunakan np.copy().
    • Gunakan indeks Boolean dengan array swap_inds untuk menukar entri yang sesuai dari b ke dalam a_out dan dari a ke dalam b_out.
    • Kembalikan a_out dan b_out.

Latihan interaktif praktis

Cobalah latihan ini dengan menyelesaikan kode contoh berikut.

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
Edit dan Jalankan Kode