Začněte nyníZačněte zdarma

Testování hypotéz – rozdíl průměrů

Chceme otestovat hypotézu, že průměrné dary přijaté od skupin A a B se liší. V předchozím cvičení jsi se naučil/a generovat jedno permutované uspořádání dat. Nyní vygenerujeme nulové rozdělení rozdílu průměrů a vypočítáme p-hodnotu.

Pro nulové rozdělení nejprve vygenerujeme více permutovaných datových sad a pro každý případ uložíme rozdíl průměrů. Poté vypočítáme testovou statistiku jako rozdíl průměrů v původní datové sadě. Nakonec odhadneme p-hodnotu jako dvojnásobek podílu případů, kde je rozdíl větší nebo roven absolutní hodnotě testové statistiky (oboustranná hypotéza). P-hodnota nižší než např. 0,05 pak může potvrzovat statistickou významnost.

Toto cvičení je součástí kurzu

Statistické simulace v Pythonu

Zobrazit kurz

Pokyny k cvičení

  • Vygeneruj více permutací donations_A a donations_B a výsledek přiřaď do perm.
  • Nastav samples jako rozdíl průměrů permuted_A_datasets a permuted_B_datasets. Používáme axis=1, abychom získali průměr pro každou datovou sadu zvlášť, nikoli celkový průměr.
  • Nastav test_stat jako rozdíl průměrů donations_A a donations_B.
  • Vypočítej p-hodnotu p_val jako dvojnásobek podílu hodnot samples, které jsou větší nebo rovny absolutní hodnotě test_stat.

Interaktivní cvičení na vyzkoušení si v praxi

Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.

# Generate permutations equal to the number of repetitions
perm = np.array([np.random.____(len(____) + len(____)) for i in range(reps)])
permuted_A_datasets = data[perm[:, :len(donations_A)]]
permuted_B_datasets = data[perm[:, len(donations_A):]]

# Calculate the difference in means for each of the datasets
samples = np.mean(____, axis=1) - np.mean(____, axis=1)

# Calculate the test statistic and p-value
test_stat = ____
p_val = 2*np.sum(____ >= np.abs(____))/reps
print("p-value = {}".format(p_val))
Upravit a spustit kód