Come utilizzare l'istruzione proc glmselect in sas


È possibile utilizzare l’istruzione PROC GLMSELECT in SAS per selezionare il miglior modello di regressione in base a un elenco di potenziali variabili predittive.

L’esempio seguente mostra come utilizzare questa affermazione nella pratica.

Esempio: come utilizzare PROC GLMSELECT in SAS per la selezione del modello

Supponiamo di voler adattare un modello di regressione lineare multipla che utilizza (1) il numero di ore trascorse a studiare, (2) il numero di esami preparatori sostenuti e (3) il genere per prevedere il voto finale dell’esame degli studenti.

Innanzitutto, utilizzeremo il seguente codice per creare un set di dati contenente queste informazioni per 20 studenti:

 /*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;

Successivamente, utilizzeremo l’istruzione PROC GLMSELECT per identificare il sottoinsieme di variabili predittive che produce il miglior modello di regressione:

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

Nota : abbiamo incluso il genere nella dichiarazione della classe perché è una variabile categoriale.

Il primo gruppo di tabelle nell’output mostra una panoramica della procedura GLMSELECT:

Possiamo vedere che il criterio utilizzato per smettere di aggiungere o rimuovere variabili dal modello era SBC , che è il criterio informativo di Schwarz , a volte chiamato criterio informativo bayesiano .

In sostanza, l’istruzione PROC GLMSELECT continua ad aggiungere o rimuovere variabili dal modello finché non trova il modello con il valore SBC più basso, che è considerato il modello “migliore”.

Il seguente gruppo di tabelle mostra come si è conclusa la selezione passo passo:

Possiamo vedere che un modello con solo il termine originale aveva un valore SBC di 93.4337 .

Aggiungendo le ore come variabile predittiva nel modello, il valore SBC è sceso a 70,4452 .

Il modo migliore per migliorare il modello era aggiungere il sesso come variabile predittrice, ma ciò in realtà ha aumentato il valore SBC a 71,7383.

Pertanto, il modello finale include solo il termine dell’intercetta e i tempi studiati.

L’ultima parte del risultato mostra il riepilogo di questo modello di regressione adattata:

Possiamo utilizzare i valori nella tabella Stime dei parametri per scrivere il modello di regressione adattato:

Punteggio esame = 67.161689 + 5.250257 (ore studiate)

Possiamo anche vedere vari parametri che ci dicono quanto bene questo modello si adatta ai dati:

Il valore R-Square ci dice la percentuale di variazione nei punteggi degli esami che può essere spiegata dal numero di ore studiate e dal numero di esami preparatori sostenuti.

In questo caso, il 72,73% della variazione dei punteggi degli esami è spiegabile dal numero di ore studiate e dal numero di esami preparatori sostenuti.

È utile conoscere anche il valore Root MSE . Questo rappresenta la distanza media tra i valori osservati e la retta di regressione.

In questo modello di regressione, i valori osservati si discostano in media di 5,28052 unità dalla retta di regressione.

Nota : fare riferimento alla documentazione SAS per un elenco completo dei potenziali argomenti che è possibile utilizzare con PROC GLMSELECT .

Risorse addizionali

I seguenti tutorial spiegano come eseguire altre attività comuni in SAS:

Come eseguire una regressione lineare semplice in SAS
Come eseguire la regressione lineare multipla in SAS
Come eseguire la regressione polinomiale in SAS
Come eseguire la regressione logistica in SAS

Aggiungi un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *