Генерація однієї перестановки
У наступних кількох вправах ми запустимо критерій значущості, використовуючи перестановкове тестування. Як обговорювалося у відео, ми хочемо з'ясувати, чи є різниця в пожертвах, згенерованих двома дизайнами — A та B. Припустімо, що ви запускали обидві версії кілька днів і отримали 500 пожертв для A та 700 для B, збережених у змінних donations_A і donations_B.
Спочатку нам потрібно згенерувати нульовий розподіл для різниці середніх. Ми зробимо це, згенерувавши кілька перестановок набору даних і обчисливши різницю середніх для кожного випадку.
Спершу згенеруємо одну перестановку та обчислимо різницю середніх для переставленого набору даних.
Ця вправа є частиною курсу
Статистичне моделювання в Python
Інструкції до вправи
- Об'єднайте два масиви
donations_Aіdonations_B, використовуючиnp.concatenate(), і присвойте результат зміннійdata. - Отримайте одну перестановку за допомогою
np.random.permutation()і присвойте її зміннійperm. - Обчисліть різницю середніх значень
permuted_Aіpermuted_Bта збережіть якdiff_in_means.
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
# 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))