Fondements de l’inférence en Python
Paul Savala
Assistant Professor of Mathematics
| Taille d'échantillon | Taille d'effet | Alpha |
|---|---|---|
![]() |
![]() |
![]() |
from scipy.stats import norm# Groupe contrôle : moyenne 0 livre, écart-type 1 livrecontrol = norm.rvs(loc=0,scale=1,size=100)# Groupe traité : moyenne -2 livres, écart-type 1 livretreatment = norm.rvs(loc=-2, scale=1, size=100)
$H_0$ : Pas de différence de perte de poids (faux)
$H_a$ : Le groupe traité perd du poids (vrai)
Conclusion : rejeter correctement $H_0$ en faveur de $H_a$.
from scipy.stats import ttest_ind# Effectuer un test t alpha = 0.05 t_test = ttest_ind(treatment, control, alternative='less')# Vérifier la significativité print(t_test.pvalue < alpha)
TRUE
control = norm.rvs(loc=0, scale=1, size=5) treatment = norm.rvs(loc=-2, scale=1, size=5)# Effectuer un test t tt = ttest_ind(treatment, control, alternative='less')print(tt.pvalue < 0.05)
FALSE
Conclusion : ne pas rejeter H0 (faux)
# Perte de poids = 0,2 livre, taille d'échantillon = 100treatment = norm.rvs(loc=-0.2, scale=1, size=100)# Effectuer un test t t_test = ttest_ind(treatment, control, alternative='less')print(t_test.pvalue < 0.05)
FALSE

S'il y a un effet significatif, notre test le détectera-t-il ?

Puissance d'un test : si l'hypothèse alternative (Ha) est vraie, quelle est la probabilité que notre test rejette la nulle (H0) avec les données fournies ?
Calculer la puissance avant de collecter l'échantillon
from statsmodels.stats import power # Fonction de puissance tt_power = power.TTestIndPower()# Calculer la puissance pwr = tt_power.power(effect_size=0.2,nobs1=100,alpha=0.05)print(pwr)
0.291
Faible probabilité de détection !
nobs1 = TTestIndPower().solve_power(effect_size=-0.2, nobs1=None, # Solve for alpha=0.05, power=0.8)print(nobs1)
13735.26
Fondements de l’inférence en Python