SAS : Comment utiliser l’option WHERE avec SET



Vous pouvez utiliser l’option WHERE avec SET dans SAS pour créer un nouvel ensemble de données qui inclut uniquement les lignes d’un autre ensemble de données où certaines conditions sont remplies.

Voici deux manières courantes d’utiliser cette option dans la pratique :

Méthode 1 : utilisez WHERE et SET avec une condition

data new_data;
    set my_data (where = (points>20));
run;

Cet exemple crée un nouvel ensemble de données appelé new_data qui inclut uniquement les lignes de my_data dont la valeur dans la colonne points est supérieure à 20.

Méthode 2 : utilisez WHERE et SET avec plusieurs conditions

data new_data;
    set my_data (where = (points>20 or team="Rockets"));
run;

Cet exemple crée un nouvel ensemble de données appelé new_data qui inclut uniquement les lignes de my_data où la valeur dans la colonne points est supérieure à 20 ou la valeur dans la colonne équipe est égale à Rockets.

Les exemples suivants montrent comment utiliser chaque méthode en pratique avec l’ensemble de données suivant dans SAS :

/*create dataset*/
data my_data;
    input team $ points assists;
    datalines;
Mavs 22 10
Rockets 12 14
Spurs 29 8
Kings 13 10
Warriors 44 10
Heat 18 8
Magic 11 5
Pelicans 19 3
Blazers 12 8
;
run;

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

Exemple 1 : utilisez WHERE et SET avec une condition

Nous pouvons utiliser la syntaxe suivante pour créer un nouvel ensemble de données appelé new_data qui inclut uniquement les lignes de my_data où la valeur dans la colonne points est supérieure à 20 :

/*create new dataset*/
data new_data;
    set my_data (where = (points>20));
run;

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

Notez que seules les lignes avec une valeur supérieure à 20 dans la colonne des points sont incluses dans cet ensemble de données.

Exemple 2 : utiliser WHERE et SET avec plusieurs conditions

Nous pouvons utiliser la syntaxe suivante pour créer un nouvel ensemble de données appelé new_data qui inclut uniquement les lignes de my_data où la valeur dans la colonne points est supérieure à 20 ou la valeur dans la colonne équipe est égale à « Rockets » :

/*create new dataset*/
data new_data;
    set my_data (where = (points>20 or team="Rockets"));
run;

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

Notez que seules les lignes avec une valeur supérieure à 20 dans la colonne des points ou une valeur de « Rockets » dans la colonne de l’équipe sont incluses dans cet ensemble de données.

Remarque : Vous pouvez utiliser et à la place de ou pour inclure uniquement les lignes qui remplissent plusieurs conditions.

Ressources additionnelles

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

Comment utiliser l’instruction SET avec plusieurs ensembles de données dans SAS
Comment sélectionner les N premières lignes d’un ensemble de données dans SAS
Comment supprimer des ensembles de données dans SAS

Ajouter un commentaire

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