Comment supprimer les caractères spéciaux des chaînes dans SAS
Le moyen le plus simple de supprimer les caractères spéciaux d’une chaîne dans SAS consiste à utiliser la fonction COMPRESS avec le modificateur ‘kas’.
Cette fonction utilise la syntaxe de base suivante :
data new_data;
set original_data;
remove_specials = compress(some_string, , 'kas');
run;
L’exemple suivant montre comment utiliser cette syntaxe dans la pratique.
Exemple : supprimer les caractères spéciaux de la chaîne dans SAS
Supposons que nous ayons l’ensemble de données suivant dans SAS qui contient les noms de divers employés et leurs ventes totales :
/*create dataset*/
data data1;
input name $ sales;
datalines;
Bob&%^ 45
M&$#@ike 50
Randy)) 39
Chad!? 14
Dan** 29
R[on] 44
;
run;
/*view dataset*/
proc print data=data1;
Notez que les valeurs de la colonne nom contiennent plusieurs caractères spéciaux.
Nous pouvons utiliser la fonction COMPRESS pour supprimer ces caractères spéciaux :
/*create second dataset with special characters removed from names*/
data data2;
set data1;
new_name=compress(name, , 'kas');
run;
/*view dataset*/
proc print data=data2;
Notez que la colonne new_name contient les valeurs de la colonne name avec les caractères spéciaux supprimés.
Voici exactement ce que la fonction COMPRESS a fait pour supprimer ces caractères spéciaux :
- k précise que l’on souhaite ‘conserver’ certains caractères
- a spécifie de conserver les caractères alphabétiques
- s spécifie de conserver les caractères d’espacement
Remarque : Vous pouvez trouver une liste complète des modificateurs pour la fonction COMPRESS sur cette page de documentation SAS .
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 convertir des chaînes en majuscules, minuscules et casse appropriée dans SAS