Comprendre l’hypothèse nulle pour la régression logistique
La régression logistique est un type de modèle de régression que nous pouvons utiliser pour comprendre la relation entre une ou plusieurs variables prédictives et une variable de réponse lorsque la variable de réponse est binaire.
Si nous n’avons qu’une seule variable prédictive et une variable de réponse, nous pouvons utiliser la régression logistique simple , qui utilise la formule suivante pour estimer la relation entre les variables :
log[p(X) / (1-p(X))] = β 0 + β 1 X
La formule sur le côté droit de l’équation prédit le logarithme des chances que la variable de réponse prenne la valeur 1.
La régression logistique simple utilise les hypothèses nulles et alternatives suivantes :
- H 0 : β 1 = 0
- H A : β 1 ≠ 0
L’hypothèse nulle stipule que le coefficient β 1 est égal à zéro. En d’autres termes, il n’existe pas de relation statistiquement significative entre la variable prédictive x et la variable réponse y.
L’hypothèse alternative stipule que β 1 n’est pas égal à zéro. En d’autres termes, il existe une relation statistiquement significative entre x et y.
Si nous avons plusieurs variables prédictives et une variable de réponse, nous pouvons utiliser la régression logistique multiple , qui utilise la formule suivante pour estimer la relation entre les variables :
log[p(X) / (1-p(X))] = β 0 + β 1 x 1 + β 2 x 2 + … + β k x k
La régression logistique multiple utilise les hypothèses nulles et alternatives suivantes :
- H 0 : β 1 = β 2 = … = β k = 0
- H A : β 1 = β 2 = … = β k ≠ 0
L’hypothèse nulle stipule que tous les coefficients du modèle sont égaux à zéro. En d’autres termes, aucune des variables prédictives n’a de relation statistiquement significative avec la variable de réponse y.
L’hypothèse alternative stipule que tous les coefficients ne sont pas simultanément égaux à zéro.
Les exemples suivants montrent comment décider de rejeter ou de ne pas rejeter l’hypothèse nulle dans les modèles de régression logistique simple et de régression logistique multiple.
Exemple 1 : régression logistique simple
Supposons qu’un professeur souhaite utiliser le nombre d’heures étudiées pour prédire la note à l’examen que les étudiants obtiendront dans sa classe. Il collecte des données sur 20 étudiants et adapte un modèle de régression logistique simple.
Nous pouvons utiliser le code suivant dans R pour ajuster un modèle de régression logistique simple :
#create data df <- data.frame(result=c(0, 0, 1, 0, 0, 0, 1, 0, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1), hours=c(1, 5, 5, 1, 2, 1, 3, 2, 2, 1, 2, 1, 3, 4, 4, 2, 1, 1, 4, 3)) #fit simple logistic regression model model <- glm(result~hours, family='binomial', data=df) #view summary of model fit summary(model) Call: glm(formula = result ~ hours, family = "binomial", data = df) Deviance Residuals: Min 1Q Median 3Q Max -1.8244 -1.1738 0.7701 0.9460 1.2236 Coefficients: Estimate Std. Error z value Pr(>|z|) (Intercept) -0.4987 0.9490 -0.526 0.599 hours 0.3906 0.3714 1.052 0.293 (Dispersion parameter for binomial family taken to be 1) Null deviance: 26.920 on 19 degrees of freedom Residual deviance: 25.712 on 18 degrees of freedom AIC: 29.712 Number of Fisher Scoring iterations: 4 #calculate p-value of overall Chi-Square statistic 1-pchisq(26.920-25.712, 19-18) [1] 0.2717286
Pour déterminer s’il existe une relation statistiquement significative entre les heures étudiées et le résultat de l’examen, nous devons analyser la valeur globale du chi carré du modèle et la valeur p correspondante.
Nous pouvons utiliser la formule suivante pour calculer la valeur globale du chi carré du modèle :
X 2 = (Déviance nulle – Déviance résiduelle) / (Df nulle – Df résiduelle)
La valeur p s’avère être 0,2717286 .
Puisque cette valeur p n’est pas inférieure à 0,05, nous ne parvenons pas à rejeter l’hypothèse nulle. En d’autres termes, il n’existe pas de relation statistiquement significative entre les heures étudiées et les résultats obtenus à l’examen.
Exemple 2 : Régression logistique multiple
Supposons qu’un professeur souhaite utiliser le nombre d’heures étudiées et le nombre d’examens préparatoires passés pour prédire la note que les étudiants obtiendront dans sa classe. Il collecte des données sur 20 étudiants et adapte un modèle de régression logistique multiple.
Nous pouvons utiliser le code suivant dans R pour ajuster un modèle de régression logistique multiple :
#create data df <- data.frame(result=c(0, 0, 1, 0, 0, 0, 1, 0, 0, 1, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1), hours=c(1, 5, 5, 1, 2, 1, 3, 2, 2, 1, 2, 1, 3, 4, 4, 2, 1, 1, 4, 3), exams=c(1, 2, 2, 1, 2, 1, 1, 3, 2, 4, 3, 2, 2, 4, 4, 5, 4, 4, 3, 5)) #fit simple logistic regression model model <- glm(result~hours+exams, family='binomial', data=df) #view summary of model fit summary(model) Call: glm(formula = result ~ hours + exams, family = "binomial", data = df) Deviance Residuals: Min 1Q Median 3Q Max -1.5061 -0.6395 0.3347 0.6300 1.7014 Coefficients: Estimate Std. Error z value Pr(>|z|) (Intercept) -3.4873 1.8557 -1.879 0.0602 . hours 0.3844 0.4145 0.927 0.3538 exams 1.1549 0.5493 2.103 0.0355 * --- Signif. codes: 0 ‘***’ 0.001 ‘**’ 0.01 ‘*’ 0.05 ‘.’ 0.1 ‘ ’ 1 (Dispersion parameter for binomial family taken to be 1) Null deviance: 26.920 on 19 degrees of freedom Residual deviance: 19.067 on 17 degrees of freedom AIC: 25.067 Number of Fisher Scoring iterations: 5 #calculate p-value of overall Chi-Square statistic 1-pchisq(26.920-19.067, 19-17) [1] 0.01971255
La valeur p pour la statistique globale du chi carré du modèle s’avère être 0,01971255 .
Puisque cette valeur p est inférieure à 0,05, nous rejetons l’hypothèse nulle. En d’autres termes, il existe une relation statistiquement significative entre la combinaison des heures étudiées et des examens préparatoires passés et la note finale obtenue à l’examen.
Ressources additionnelles
Les didacticiels suivants offrent des informations supplémentaires sur la régression logistique :
Introduction à la régression logistique
Comment signaler les résultats de la régression logistique
Régression logistique vs régression linéaire : les principales différences