Come utilizzare proc rank in sas (con esempi)


È possibile utilizzare PROC RANK in SAS per calcolare il rango di una o più variabili numeriche.

Ecco i quattro modi più comuni per utilizzare questa procedura:

Metodo 1: classificare una variabile

 proc rank data =original_data out =ranked_data;
   var var1;
   ranks var1_rank;
run ;

Metodo 2: classificare una variabile per gruppo

 proc rank data =original_data out =ranked_data;
   var var1;
   by var2;
   ranks var1_rank;
run ;

Metodo 3: classifica una variabile in percentili

 proc rank data =original_data groups =4 out =ranked_data;
   var var1;
   ranks var1_rank;
run ;

Metodo 4: classificare più variabili

 proc rank data =original_data out =ranked_data;
   var var1 var2;
   ranks var1_rank var2_rank;
run ;

Gli esempi seguenti mostrano come utilizzare ciascun metodo con il seguente set di dati in SAS:

 /*create dataset*/
data original_data;
    input team $pointsrebounds;
    datalines ;
At 25 10
At 18 4
At 18 7
At 24 8
B 27 9
B 33 13
B 31 11
B 30 16
;
run ;

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

Esempio 1: variabile di rango uno

Il codice seguente mostra come creare una nuova variabile chiamata points_rank che classifica i punti segnati da ciascuna squadra:

 /*rank points scored by team*/
proc rank data =original_data out =ranked_data;
   var points;
   ranks points_rank;
run ;

/*view ranks*/
proc print data =ranked_data;

La squadra con più punti riceve la classifica più alta e la squadra con meno punti riceve la classifica più bassa.

A qualsiasi parità di punti segnati viene assegnato un punteggio medio. Ad esempio, le righe con il primo e il secondo punto più basso ricevono una classifica di 1,5, poiché è la media di 1 e 2.

Tieni presente che puoi invece utilizzare l’istruzione discendente per assegnare alla squadra con il maggior numero di punti il punteggio più basso :

 /*rank points scored by team in descending order*/
proc rank data =original_data descending out =ranked_data;
    var points;
    ranks points_rank;
run ;

/*view ranks*/
proc print data =ranked_data; 

Esempio 2: variabile di rango uno per gruppo

Il codice seguente mostra come creare una nuova variabile chiamata points_rank che classifica i punti segnati, raggruppati per squadra:

 /*rank points scored, grouped by team*/
proc rank data =original_data out =ranked_data;
    var points;
    by team;
    ranks points_rank;
run ;

/*view ranks*/
proc print data =ranked_data; 

Esempio 3: classificare una variabile in percentili

Possiamo usare l’istruzione groups per ordinare le variabili in gruppi percentili. Ad esempio, possiamo classificare ciascun valore in punti in un quartile (quattro gruppi):

 /*rank points into quartiles*/
proc rank data =original_data groups =4 out =ranked_data;
   var points;
   ranks points_rank;
run ;

/*view ranks*/
proc print data =ranked_data;

Alle righe con punti nel quartile più basso viene assegnato un gruppo 0 , alle righe con punti nel quartile più basso successivo viene assegnato un gruppo 1 e così via.

Nota : per assegnare valori in decili, utilizzare semplicemente groups=10 .

Esempio 4: classificare più variabili

Il codice seguente mostra come creare entrambe le nuove variabili per classificare punti e rimbalzi :

 proc rank data =original_data out =ranked_data;
   var points rebounds;
   ranks points_rank rebounds_rank;
run ; 

Risorse addizionali

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

Come utilizzare il riepilogo della procedura in SAS
Come utilizzare Proc Tabulate in SAS
Come utilizzare PROC Transpose in SAS
Come creare tabelle di frequenza in SAS

Aggiungi un commento

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