ÎncepețiÎncepe gratuit

Analiza puterii - Partea I

Acum ne îndreptăm atenția spre analiza puterii. De regulă, vrei să te asiguri că orice experiment sau test A/B pe care îl rulezi are o putere de cel puțin 80%. O modalitate de a garanta acest lucru este să calculezi dimensiunea eșantionului necesară pentru a atinge 80% putere.

Să presupunem că ești responsabil pentru un site de știri și dorești să crești timpul pe care utilizatorii îl petrec pe site. În prezent, timpul petrecut de utilizatori pe site urmează o distribuție normală cu o medie de 1 minut și o abatere standard de 0,5 minute. Presupunem că introduci o funcționalitate care încarcă paginile mai rapid și vrei să știi ce dimensiune a eșantionului este necesară pentru a măsura o creștere de 5% a timpului petrecut pe site.

În acest exercițiu, vom configura cadrul pentru a rula o singură simulare, vom aplica un test t și vom calcula valoarea p.

Acest exercițiu face parte din cursul

Simulare statistică în Python

Vezi cursul

Instrucțiuni pentru exercițiu

  • Inițializează effect_size la 5%, control_mean la 1 și control_sd la 0,5.
  • Folosind np.random.normal(), simulează o singură extragere pentru control_time_spent și treatment_time_spent pe baza valorilor inițializate.
  • Aplică un test t pe treatment_time_spent și control_time_spent folosind st.ttest_ind(), unde st este scipy.stats, deja importat.
  • Semnificația statistică stat_sig trebuie să fie True dacă p_value este mai mic decât 0,05, altfel trebuie să fie False.

Exercițiu interactiv practic

Încearcă acest exercițiu completând acest cod de exemplu.

# Initialize effect_size, control_mean, control_sd
effect_size, sample_size, control_mean, control_sd = ____, 50, ____, ____

# Simulate control_time_spent and treatment_time_spent, assuming equal variance
control_time_spent = np.random.normal(loc=control_mean, scale=____, size=sample_size)
treatment_time_spent = np.random.normal(loc=____*(1+effect_size), scale=control_sd, size=____)

# Run the t-test and get the p_value
t_stat, p_value = st.ttest_ind(____, ____)
stat_sig = p_value < ____
print("P-value: {}, Statistically Significant? {}".format(p_value, stat_sig))
Editează și rulează codul