IniziaInizia gratis

Generare un campione di permutazione

Nel video hai visto che il campionamento per permutazione è un ottimo modo per simulare l'ipotesi che due variabili abbiano distribuzioni di probabilità identiche. Questa è spesso un'ipotesi da testare, quindi in questo esercizio scriverai una funzione per generare un campione di permutazione a partire da due insiemi di dati.

Ricorda: un campione di permutazione di due array con rispettivamente n1 e n2 elementi si costruisce concatenando gli array, rimescolando i contenuti dell'array concatenato e poi prendendo i primi n1 elementi come campione di permutazione del primo array e gli ultimi n2 elementi come campione di permutazione del secondo array.

Questo esercizio fa parte del corso

Pensiero statistico in Python (Parte 2)

Visualizza il corso

Istruzioni dell'esercizio

  • Concatena i due array di input in uno solo usando np.concatenate(). Assicurati di passare data1 e data2 come un unico argomento (data1, data2).
  • Usa np.random.permutation() per permutare l'array concatenato.
  • Salva i primi len(data1) elementi di permuted_data come perm_sample_1 e gli ultimi len(data2) elementi di permuted_data come perm_sample_2. In pratica, puoi farlo usando :len(data1) e len(data1): per effettuare lo slicing di permuted_data.
  • Restituisci perm_sample_1 e perm_sample_2.

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

def permutation_sample(data1, data2):
    """Generate a permutation sample from two data sets."""

    # Concatenate the data sets: data
    data = ____

    # Permute the concatenated array: permuted_data
    permuted_data = ____

    # Split the permuted array into two: perm_sample_1, perm_sample_2
    perm_sample_1 = permuted_data[____]
    perm_sample_2 = permuted_data[____]

    return perm_sample_1, perm_sample_2
Modifica ed esegui il codice