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