Comment utiliser l’instruction PROC GLMSELECT dans SAS



Vous pouvez utiliser l’instruction PROC GLMSELECT dans SAS pour sélectionner le meilleur modèle de régression en fonction d’une liste de variables prédictives potentielles.

L’exemple suivant montre comment utiliser cette instruction dans la pratique.

Exemple : Comment utiliser PROC GLMSELECT dans SAS pour la sélection de modèle

Supposons que nous souhaitions adapter un modèle de régression linéaire multiple qui utilise (1) le nombre d’heures passées à étudier, (2) le nombre d’examens préparatoires passés et (3) le sexe pour prédire la note finale des étudiants à l’examen.

Tout d’abord, nous allons utiliser le code suivant pour créer un ensemble de données contenant ces informations pour 20 étudiants :

/*create dataset*/
data exam_data;
    input hours prep_exams gender $ score;
    datalines;
1 1 0 76
2 3 1 78
2 3 0 85
4 5 0 88
2 2 0 72
1 2 1 69
5 1 1 94
4 1 0 94
2 0 1 88
4 3 0 92
4 4 1 90
3 3 1 75
6 2 1 96
5 4 0 90
3 4 0 82
4 4 1 85
6 5 1 99
2 1 0 83
1 0 1 62
2 1 0 76
;
run;

/*view dataset*/
proc print data=exam_data;

Ensuite, nous utiliserons l’instruction PROC GLMSELECT pour identifier le sous-ensemble de variables prédictives qui produit le meilleur modèle de régression :

/*perform model selection*/
proc glmselect data=exam_data;
    class gender;
    model score = hours prep_exams gender;
run;

Remarque : Nous avons inclus le sexe dans l’instruction de classe car il s’agit d’une variable catégorielle.

Le premier groupe de tableaux de la sortie montre un aperçu de la procédure GLMSELECT :

Nous pouvons voir que le critère utilisé pour arrêter d’ajouter ou de supprimer des variables du modèle était SBC , qui est le critère d’information de Schwarz , parfois appelé critère d’information bayésien .

Essentiellement, l’instruction PROC GLMSELECT continue d’ajouter ou de supprimer des variables du modèle jusqu’à ce qu’elle trouve le modèle avec la valeur SBC la plus basse, qui est considéré comme le « meilleur » modèle.

Le groupe de tableaux suivant montre comment la sélection pas à pas s’est arrêtée :

Nous pouvons voir qu’un modèle avec uniquement le terme d’origine avait une valeur SBC de 93,4337 .

En ajoutant les heures comme variable prédictive dans le modèle, la valeur SBC est tombée à 70,4452 .

La meilleure façon d’améliorer le modèle était d’ajouter le sexe comme variable prédictive, mais cela a en fait augmenté la valeur SBC à 71,7383.

Ainsi, le modèle final inclut uniquement le terme d’interception et les heures étudiées.

La dernière partie du résultat montre le résumé de ce modèle de régression ajusté :

Nous pouvons utiliser les valeurs du tableau Estimations des paramètres pour écrire le modèle de régression ajusté :

Score de l’examen = 67,161689 + 5,250257 (heures étudiées)

Nous pouvons également voir diverses mesures qui nous indiquent dans quelle mesure ce modèle s’adapte aux données :

La valeur R-Carré nous indique le pourcentage de variation des résultats des examens qui peut s’expliquer par le nombre d’heures étudiées et le nombre d’examens préparatoires passés.

Dans ce cas, 72,73 % de la variation des résultats aux examens peut s’expliquer par le nombre d’heures étudiées et le nombre d’examens préparatoires passés.

La valeur Root MSE est également utile à connaître. Cela représente la distance moyenne entre les valeurs observées et la droite de régression.

Dans ce modèle de régression, les valeurs observées s’éloignent en moyenne de 5,28052 unités de la droite de régression.

Remarque : reportez-vous à la documentation SAS pour obtenir une liste complète des arguments potentiels que vous pouvez utiliser avec PROC GLMSELECT .

Ressources additionnelles

Les didacticiels suivants expliquent comment effectuer d’autres tâches courantes dans SAS :

Comment effectuer une régression linéaire simple dans SAS
Comment effectuer une régression linéaire multiple dans SAS
Comment effectuer une régression polynomiale dans SAS
Comment effectuer une régression logistique dans SAS

Ajouter un commentaire

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