Comment effectuer un test de Wald dans R



Un test de Wald peut être utilisé pour tester si un ou plusieurs paramètres d’un modèle sont égaux à certaines valeurs.

Ce test est souvent utilisé pour déterminer si une ou plusieurs variables prédictives dans un modèle de régression sont égales à zéro.

Nous utilisons les hypothèses nulles et alternatives suivantes pour ce test :

  • H 0 : Certains ensembles de variables prédictives sont toutes égales à zéro.
  • H A : Toutes les variables prédictives de l’ensemble ne sont pas égales à zéro.

Si nous ne parvenons pas à rejeter l’hypothèse nulle, nous pouvons alors supprimer l’ensemble spécifié de variables prédictives du modèle, car elles n’offrent pas d’amélioration statistiquement significative de l’ajustement du modèle.

L’exemple suivant montre comment effectuer un test de Wald dans R.

Exemple : test de Wald dans R

Pour cet exemple, nous utiliserons l’ensemble de données mtcars intégré dans R pour ajuster le modèle de régression linéaire multiple suivant :

mpg = β 0 + β 1 disp + β 2 carb + β 3 ch + β 4 cyl

Le code suivant montre comment ajuster ce modèle de régression et afficher le résumé du modèle :

#fit regression model
model <- lm(mpg ~ disp + carb + hp + cyl, data = mtcars)

#view model summary
summary(model)

Call:
lm(formula = mpg ~ disp + carb + hp + cyl, data = mtcars)

Residuals:
    Min      1Q  Median      3Q     Max 
-5.0761 -1.5752 -0.2051  1.0745  6.3047 

Coefficients:
             Estimate Std. Error t value Pr(>|t|)    
(Intercept) 34.021595   2.523397  13.482 1.65e-13 ***
disp        -0.026906   0.011309  -2.379   0.0247 *  
carb        -0.926863   0.578882  -1.601   0.1210    
hp           0.009349   0.020701   0.452   0.6551    
cyl         -1.048523   0.783910  -1.338   0.1922    
---
Signif. codes:  0 '***' 0.001 '**' 0.01 '*' 0.05 '.' 0.1 ' ' 1

Residual standard error: 2.973 on 27 degrees of freedom
Multiple R-squared:  0.788,	Adjusted R-squared:  0.7566 
F-statistic: 25.09 on 4 and 27 DF,  p-value: 9.354e-09

Ensuite, nous pouvons utiliser la fonction wald.test() du package aod pour tester si les coefficients de régression pour les variables prédictives « hp » et « cyl » sont tous deux égaux à zéro.

Cette fonction utilise la syntaxe de base suivante :

wald.test(Sigma, b, Termes)

où:

  • Sigma : La matrice de variance-covariance du modèle de régression
  • b : Un vecteur de coefficients de régression du modèle
  • Termes : Un vecteur qui spécifie les coefficients à tester

Le code suivant montre comment utiliser cette fonction en pratique :

library(aod)

#perform Wald Test to determine if 3rd and 4th predictor variables are both zero
wald.test(Sigma = vcov(model), b = coef(model), Terms = 3:4)

Wald test:
----------

Chi-squared test:
X2 = 3.6, df = 2, P(> X2) = 0.16

À partir du résultat, nous pouvons voir que la valeur p du test est de 0,16.

Puisque cette valeur p n’est pas inférieure à 0,05, nous ne parvenons pas à rejeter l’hypothèse nulle du test de Wald.

Cela signifie que nous pouvons supposer que les coefficients de régression pour les variables prédictives « hp » et « cyl » sont tous deux égaux à zéro.

Nous pouvons supprimer ces termes du modèle car ils n’améliorent pas statistiquement de manière significative l’ajustement global du modèle.

Ressources additionnelles

Les didacticiels suivants expliquent comment effectuer d’autres opérations courantes dans R :

Comment effectuer une régression linéaire simple dans R
Comment effectuer une régression linéaire multiple dans R
Comment interpréter la sortie de régression dans R
Comment calculer le facteur d’inflation de variance (VIF) dans R

Ajouter un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *