SAS : Comment supprimer les virgules d’une chaîne
Le moyen le plus simple de supprimer les virgules d’une chaîne dans SAS consiste à utiliser la fonction TRANSLATE , qui convertit chaque occurrence d’un caractère en un autre caractère.
Pour ce faire, vous pouvez utiliser la syntaxe de base suivante :
data new_data;
set original_data;
string_var = compress(translate(string_var,"",','));
run;
Cet exemple particulier supprime chaque virgule de chaque chaîne de la variable string_var dans un ensemble de données.
L’exemple suivant montre comment utiliser cette syntaxe dans la pratique.
Exemple : supprimer les virgules d’une chaîne dans SAS
Supposons que nous disposions de l’ensemble de données suivant dans SAS qui contient des informations sur diverses équipes de basket-ball :
/*create dataset*/
data my_data;
input team $ points;
datalines;
,Mavs, 113
Pacers 95
,Ca,vs 120
Lakers 114
Heat 123
King,s 119
Raptors 105
,Hawks 95
Ma,gic 103
Spu,,rs 119
;
run;
/*view dataset*/
proc print data=my_data;
Notez que plusieurs chaînes de la colonne équipe contiennent des virgules à différents endroits.
Nous pouvons utiliser la syntaxe suivante pour supprimer toutes les virgules des chaînes de la colonne team :
/*create new dataset where commas are removed from each string in team column*/
data new_data;
set my_data;
team = compress(translate(team,"",','));
run;
/*view new dataset*/
proc print data=new_data;
Notez que les virgules ont été supprimées de chaque chaîne de la colonne équipe .
Voici ce que ce code a réellement fait :
- La fonction TRANSLATE a remplacé chaque virgule par un espace vide.
- Ensuite, la fonction COMPRESS a supprimé les espaces vides de chaque chaîne.
Remarque : Vous pouvez trouver la documentation complète de la fonction SAS TRANSLATE ici .
Ressources additionnelles
Les didacticiels suivants expliquent comment effectuer d’autres tâches courantes dans SAS :
Comment extraire des nombres d’une chaîne dans SAS
Comment utiliser la fonction SUBSTR dans SAS
Comment supprimer les caractères spéciaux des chaînes dans SAS