Comment effectuer une ANCOVA en Python
Une ANCOVA (« analyse de covariance ») est utilisée pour déterminer s’il existe ou non une différence statistiquement significative entre les moyennes de trois groupes indépendants ou plus, après contrôle d’une ou plusieurs covariables .
Ce tutoriel explique comment effectuer une ANCOVA en Python.
Exemple : ANCOVA en Python
Une enseignante souhaite savoir si trois techniques d’étude différentes ont un impact sur les résultats des examens, mais elle souhaite tenir compte de la note actuelle que l’élève a déjà dans la classe.
Elle effectuera une ANCOVA en utilisant les variables suivantes :
- Variable factorielle : technique d’étude
- Covariable : note actuelle
- Variable de réponse : score à l’examen
Suivez les étapes suivantes pour effectuer une ANCOVA sur cet ensemble de données :
Étape 1 : Saisissez les données.
Tout d’abord, nous allons créer un DataFrame pandas pour contenir nos données :
import numpy as np import pandas as pd #create data df = pd.DataFrame({'technique': np.repeat(['A', 'B', 'C'], 5), 'current_grade': [67, 88, 75, 77, 85, 92, 69, 77, 74, 88, 96, 91, 88, 82, 80], 'exam_score': [77, 89, 72, 74, 69, 78, 88, 93, 94, 90, 85, 81, 83, 88, 79]}) #view data df technique current_grade exam_score 0 A 67 77 1 A 88 89 2 A 75 72 3 A 77 74 4 A 85 69 5 B 92 78 6 B 69 88 7 B 77 93 8 B 74 94 9 B 88 90 10 C 96 85 11 C 91 81 12 C 88 83 13 C 82 88 14 C 80 79
Étape 2 : Effectuez l’ANCOVA.
Ensuite, nous effectuerons une ANCOVA en utilisant la fonction ancova() de la bibliothèque pingouin :
pip install pingouin from pingouin import ancova #perform ANCOVA ancova(data=df, dv='exam_score', covar='current_grade', between='technique') Source SS DF F p-unc np2 0 technique 390.575130 2 4.80997 0.03155 0.46653 1 current_grade 4.193886 1 0.10329 0.75393 0.00930 2 Residual 446.606114 11 NaN NaN NaN
Étape 3 : Interprétez les résultats.
À partir du tableau ANCOVA, nous voyons que la valeur p (p-unc = « valeur p non corrigée ») pour la technique d’étude est de 0,03155 . Puisque cette valeur est inférieure à 0,05, nous pouvons rejeter l’hypothèse nulle selon laquelle chacune des techniques d’étude conduit à la même note moyenne à l’examen, même après avoir pris en compte la note actuelle de l’étudiant dans la classe .