Test d’hypothèse par bootstrap
Le test par permutation repose sur une hypothèse assez restrictive : les longueurs d’épisodes des hétérozygotes et du type sauvage sont distribuées de façon identique. Utilisez maintenant un test d’hypothèse par bootstrap pour tester l’hypothèse selon laquelle les moyennes sont égales, sans faire d’hypothèses sur les distributions.
Cet exercice fait partie du cours
Études de cas en pensée statistique
Instructions
- Créez un tableau
bout_lengths_concatqui contient toutes les longueurs d’épisodes pour le type sauvage (bout_lengths_wt) et pour les hétérozygotes (bout_lengths_het) à l’aide denp.concatenate(). - Calculez la moyenne de toutes les longueurs d’épisodes à partir de ce tableau concaténé (
bout_lengths_concat) et enregistrez le résultat dans la variablemean_bout_length. - Décalez les deux jeux de données de façon à leur donner la même moyenne, à savoir
mean_bout_length. Stockez les tableaux décalés dans les variableswt_shiftedethet_shifted. - Utilisez
dcst.draw_bs_reps()pour tirer 10 000 réplicats bootstrap de la moyenne pour chacun des jeux de données décalés. Stockez les réplicats respectifs dansbs_reps_wtetbs_reps_het. - Soustrayez
bs_reps_wtdebs_reps_hetpour obtenir les réplicats bootstrap de la différence de moyennes. Stockez le résultat dans la variablebs_reps. - Calculez la p-value en définissant « au moins aussi extrême que » par le fait que la différence de moyennes sous l’hypothèse nulle est supérieure ou égale à celle observée expérimentalement. La variable
diff_means_expde l’exercice précédent est déjà disponible dans votre espace de travail.
Exercice interactif pratique
Essayez cet exercice en complétant cet exemple de code.
# Concatenate arrays: bout_lengths_concat
bout_lengths_concat = ____((____, ____))
# Compute mean of all bout_lengths: mean_bout_length
mean_bout_length = ____
# Generate shifted arrays
wt_shifted = ____ - np.mean(____) + ____
het_shifted = ____ - ____ + ____
# Compute 10,000 bootstrap replicates from shifted arrays
bs_reps_wt = ____
bs_reps_het = ____
# Get replicates of difference of means: bs_replicates
bs_reps = ____ - ____
# Compute and print p-value: p
p = ____(____ >= ____) / len(____)
print('p-value =', p)