SAS : Comment utiliser PROC FREQ avec l’option ORDER



Vous pouvez utiliser PROC FREQ avec l’option ORDER=FREQ dans SAS pour créer un tableau de fréquence dans lequel les catégories du tableau sont triées en fonction de la fréquence.

Vous pouvez utiliser la syntaxe suivante pour ce faire :

proc freq data=my_data order=freq;
    tables my_variable;
run;

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

Exemple : utiliser PROC FREQ avec l’option ORDER dans SAS

Pour cet exemple, nous utiliserons l’ensemble de données intégré SAS appelé BirthWgt , qui contient diverses caractéristiques de 100 000 mères ayant récemment accouché.

Nous pouvons utiliser PROC PRINT pour afficher les 10 premières observations de cet ensemble de données :

/*view first 10 observations from BirthWgt dataset*/
proc print data=sashelp.BirthWgt (obs=10);

run;

Nous pouvons utiliser le code suivant pour créer une table de fréquence pour la variable Race :

/*create frequency table for Race variable*/
proc freq data=sashelp.BirthWgt;
	tables Race;
run;

tableau des fréquences en SAS

Notez que les catégories sont actuellement triées par ordre alphabétique.

Pour trier les catégories par fréquence, nous pouvons utiliser la syntaxe suivante :

/*create frequency table for Race variable, sorted by frequency*/
proc freq data=sashelp.BirthWgt order=freq;
	tables Race;
run;

SAS PROC FREQ avec option COMMANDE

Notez que les catégories sont désormais triées en fonction de la fréquence, de la plus élevée à la plus faible.

Malheureusement, il n’existe pas d’option intégrée permettant de trier les catégories en fonction de la fréquence, de la plus basse à la plus élevée.

Toutefois, vous pouvez utiliser la solution de contournement suivante avec l’instruction PROC SORT pour trier en fonction de la fréquence, de la plus basse à la plus élevée :

/*create frequency table and store results in Racefreq*/
proc freq data=sashelp.BirthWgt noprint;
   tables Race / out=Racefreq;
run;

/*sort Racefreq based on frequency from lowest to highest*/
proc sort data=Racefreq;
  by count;
run;

/*create new dataset with cumulative freq and cumulative percent*/
data freq_low_to_high;
  set Racefreq;
  cumcount + count;
  cumpercent + percent;
run;

/*view results*/
proc print data=freq_low_to_high;

SAS PROC FREQ trier par ordre croissant

Notez que les catégories sont désormais triées en fonction de la fréquence, de la plus basse à la plus élevée.

Ressources additionnelles

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

SAS : Comment utiliser PROC FREQ avec l’instruction WHERE
SAS : Comment utiliser PROC FREQ par groupe
SAS : Comment utiliser PROC RANK

Ajouter un commentaire

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