Comment utiliser SELECT-WHEN dans SAS (avec exemple)



Vous pouvez utiliser une instruction SELECT-WHEN dans SAS pour attribuer des valeurs à une nouvelle variable en fonction des valeurs d’une variable catégorielle existante dans un ensemble de données.

Cette instruction utilise la syntaxe de base suivante :

data new_data;
set my_data;
select (Existing_Column);
   when ('value1')    New_Column=1;
   when ('value2')    New_Column=2;
   when ('value3')    New_Column=3;
   otherwise          New_Column=4;
end;
run;

Cette syntaxe produit une nouvelle colonne appelée New_Column dont les valeurs dépendent des valeurs de Existing_Column .

L’exemple suivant montre comment utiliser une instruction SELECT-WHEN dans la pratique.

Exemple : SELECT-WHEN dans SAS

Supposons que nous ayons l’ensemble de données suivant dans SAS qui contient des informations sur divers joueurs de basket-ball :

/*create dataset*/
data my_data;
    input team $ rating $ points;
    datalines;
Mavs Great 22
Mavs Good 29
Mavs OK 15
Mavs Bad 8
Spurs Good 30
Spurs OK 15
Spurs OK 20
Spurs Bad 7
;
run;

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

Nous pouvons utiliser l’instruction SELECT-WHEN suivante pour créer une nouvelle variable appelée Player_Status dont les valeurs dépendent de la valeur dans la colonne de notation :

/*create new dataset with Player_Status column*/
data new_data;
set my_data;
select (rating);
   when ('Great')    Player_Status=1;
   when ('Good')     Player_Status=2;
   when ('OK')       Player_Status=3;
   otherwise         Player_Status=4;
end;
run;

/*view new dataset*/
proc print data=new_data;

Voici comment les valeurs ont été générées dans la nouvelle colonne Player_Status :

  • Si la note était égale à « Excellent », alors Player_Status recevait 1 .
  • Si la note était égale à « Bon », alors Player_Status était attribué à 2 .
  • Si la note était égale à « OK », alors Player_Status était attribué 3 .
  • Si la note n’était égale à aucune des valeurs spécifiées précédemment, alors Player_Status était attribué 4 .

Remarque : Vous pouvez trouver la documentation complète de l’instruction SELECT dans SAS ici .

Ressources additionnelles

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

Le guide complet des boucles DO dans SAS
Comment utiliser IF-THEN-DO dans SAS

Ajouter un commentaire

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