Візуалізація p-value
У цій вправі ви візуалізуєте p-value — ймовірність того, що оцінений нами ефект (або «швидкість») є результатом випадкових коливань у вибірці. Ваше завдання — показати це як частку точок у перетасованому розподілі тестової статистики, що лежать праворуч від середнього значення тестової статистики («розмір ефекту»), обчисленого з неперетасованих вибірок.
Щоб ви швидше стартували, ми попередньо завантажили group_duration_short і group_duration_long, а також функції compute_test_statistic(), shuffle_and_split() і plot_test_statistic_effect().
Ця вправа є частиною курсу
Вступ до лінійного моделювання в Python
Інструкції до вправи
- Використайте
compute_test_statistic(), щоб отриматиtest_statistic_unshuffledзgroup_duration_shortіgroup_duration_long; потім застосуйтеnp.mean(), щоб обчислити розмір ефекту. - Використайте
shuffle_and_split(), щоб створитиshuffle_half1іshuffle_half2, і застосуйтеcompute_test_statistic(), щоб обчислитиtest_statistic_shuffled. - Створіть булеву маску
condition, де значенняtest_statistic_shuffledє більшими або дорівнюютьeffect_size, а потім використайте цю маску, щоб обчислитиp_value. - Виведіть
p_valueі побудуйте обидві тестові статистики за допомогоюplot_test_statistic_effect().
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
# 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)