Aan de slagBegin gratis

De p-waarde visualiseren

In deze oefening visualiseer je de p-waarde: de kans dat het effect (of de "snelheid") die we hebben geschat, het gevolg is van willekeurige variatie in de steekproef. Je doel is om dit te visualiseren als het aandeel punten in de geschudde verdeling van de toetsstatistiek dat rechts van het gemiddelde van de toetsstatistiek ("effectgrootte") uit de ongeschudde steekproeven valt.

Om je op weg te helpen, hebben we group_duration_short en group_duration_long alvast geladen, evenals de functies compute_test_statistic(), shuffle_and_split() en plot_test_statistic_effect().

Deze oefening maakt deel uit van de cursus

Introductie tot lineaire modellering in Python

Bekijk cursus

Oefeninstructies

  • Gebruik compute_test_statistic() om test_statistic_unshuffled te krijgen uit group_duration_short en group_duration_long; gebruik daarna np.mean() om de effectgrootte te berekenen.
  • Gebruik shuffle_and_split() om shuffle_half1 en shuffle_half2 te maken, en gebruik compute_test_statistic() om de test_statistic_shuffled te berekenen.
  • Maak een booleaanse mask condition waarbij test_statistic_shuffled-waarden groter dan of gelijk aan effect_size zijn, en gebruik deze mask om de p_value te berekenen.
  • Print de p_value en plot beide toetsstatistieken met plot_test_statistic_effect().

Interactieve oefening met praktijkervaring

Probeer deze oefening door deze voorbeeldcode aan te vullen.

# 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)
Code bewerken en uitvoeren