IniziaInizia gratis

Visualizzare il p-value

In questo esercizio visualizzerai il p-value, ovvero la probabilità che l’effetto (o la "velocità") che abbiamo stimato sia il risultato della variazione casuale nel campione. Il tuo obiettivo è mostrarlo come la frazione di punti nella distribuzione della statistica di test rimescolata che cadono a destra della media della statistica di test ("effect size") calcolata dai campioni non rimescolati.

Per iniziare, abbiamo già caricato group_duration_short e group_duration_long e le funzioni compute_test_statistic(), shuffle_and_split() e plot_test_statistic_effect().

Questo esercizio fa parte del corso

Introduzione alla modellazione lineare in Python

Visualizza il corso

Istruzioni dell'esercizio

  • Usa compute_test_statistic() per ottenere test_statistic_unshuffled da group_duration_short e group_duration_long; poi usa np.mean() per calcolare l’effect size.
  • Usa shuffle_and_split() per creare shuffle_half1 e shuffle_half2, e usa compute_test_statistic() per calcolare test_statistic_shuffled.
  • Crea una maschera booleana condition in cui i valori di test_statistic_shuffled siano maggiori o uguali a effect_size, quindi usa questa maschera per calcolare il p_value.
  • Stampa il p_value e traccia entrambe le statistiche di test usando plot_test_statistic_effect().

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

# Compute the test stat distribution and effect size for two population groups
test_statistic_unshuffled = compute_test_statistic(____, ____)
effect_size = np.mean(____)

# Randomize the two populations, and recompute the test stat distribution
shuffled_half1, ____ = shuffle_and_split(group_duration_short, ____)
test_statistic_shuffled = compute_test_statistic(shuffled_half1, ____)

# Compute the p-value as the proportion of shuffled test stat values >= the effect size
condition = ____ >= ____
p_value = len(test_statistic_shuffled[____]) / len(test_statistic_shuffled)

# Print p-value and overplot the shuffled and unshuffled test statistic distributions
print("The p-value is = {}".format(____))
fig = plot_test_stats_and_pvalue(test_statistic_unshuffled, test_statistic_shuffled)
Modifica ed esegui il codice