Generare una singola permutazione
Nei prossimi esercizi eseguiremo un test di significatività usando il permutation testing. Come discusso nel video, vogliamo capire se c'è differenza nelle donazioni generate dai due design - A e B. Supponi di aver fatto girare entrambe le versioni per alcuni giorni e di aver raccolto 500 donazioni su A e 700 su B, memorizzate nelle variabili donations_A e donations_B.
Per prima cosa dobbiamo generare una distribuzione nulla della differenza tra le medie. Lo faremo creando più permutazioni dell'insieme di dati e calcolando la differenza tra le medie per ciascun caso.
Per iniziare, genera una singola permutazione e calcola la differenza tra le medie per l'insieme di dati permutato.
Questo esercizio fa parte del corso
Simulazione statistica in Python
Istruzioni dell'esercizio
- Concatena i due array
donations_Aedonations_Busandonp.concatenate()e assegna il risultato adata. - Ottieni una singola permutazione usando
np.random.permutation()e assegnala aperm. - Calcola la differenza tra i valori medi di
permuted_Aepermuted_Bcomediff_in_means.
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
# Concatenate the two arrays donations_A and donations_B into data
len_A, len_B = len(donations_A), len(donations_B)
data = ____([donations_A, donations_B])
# Get a single permutation of the concatenated length
perm = ____(len(donations_A) + len(donations_B))
# Calculate the permutated datasets and difference in means
permuted_A = data[perm[:len(donations_A)]]
permuted_B = data[perm[len(donations_A):]]
diff_in_means = ____
print("Difference in the permuted mean values = {}.".format(diff_in_means))