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

Analýza síly testu – část II

V předchozím cvičení jsme simulovali jeden průběh experimentu a získali jsme p-hodnotu. Teď tento postup využijeme k výpočtu statistické síly testu. Statistická síla vyjadřuje, jak dobře je experiment schopen odhalit rozdíl mezi testovanou a kontrolní skupinou, pokud takový rozdíl skutečně existuje. Dobrou praxí je usilovat o sílu testu alespoň 80 %.

Pro náš web chceme zjistit, kolik návštěvníků musí vidět každou variantu, abychom s 80% silou testu zachytili 10% nárůst stráveného času. Začneme s malým vzorkem (50), simulujeme více průběhů experimentu a zkontrolujeme sílu testu. Pokud dosáhneme 80 %, zastavíme se. Pokud ne, zvětšíme vzorek a zkusíme to znovu.

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

Statistické simulace v Pythonu

Zobrazit kurz

Pokyny k cvičení

  • Pro náhodné proměnné time_spent nastav parametr size jako n-tici tak, aby výsledný tvar byl sample_size \(\times\) sims.
  • Vypočítej power jako podíl p-hodnot menších než 0,05 (statisticky významných).
  • Pokud je power větší nebo rovno 80 %, ukonči while smyčku pomocí break. Jinak pokračuj v navyšování sample_size o 10.

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

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

sample_size = 50

# Keep incrementing sample size by 10 till we reach required power
while 1:
    control_time_spent = np.random.normal(loc=control_mean, scale=control_sd, size=(____,____)))
    treatment_time_spent = np.random.normal(loc=control_mean*(1+effect_size), scale=control_sd, size=(____,____))
    t, p = st.ttest_ind(treatment_time_spent, control_time_spent)
    
    # Power is the fraction of times in the simulation when the p-value was less than 0.05
    power = (p < 0.05).sum()/____
    if ____: 
        ____
    else: 
        ____ += ____
print("For 80% power, sample size required = {}".format(sample_size))
Upravit a spustit kód