Comment extraire des nombres d’une chaîne dans SAS
Le moyen le plus simple d’extraire des nombres d’une chaîne dans SAS consiste à utiliser la fonction COMPRESS avec le modificateur « A ».
Cette fonction utilise la syntaxe de base suivante :
data new_data;
set original_data;
numbers_only = compress(some_string, '', 'A');
run;
L’exemple suivant montre comment utiliser cette syntaxe dans la pratique.
Exemple : extraire des numéros d’une chaîne dans SAS
Supposons que nous disposions de l’ensemble de données suivant dans SAS qui montre les noms de divers cours universitaires :
/*create dataset*/
data original_data;
input course $12.;
datalines;
Stats101
Economics203
Business201
Botany411
Calculus101
English201
Chemistry402
Physics102
;
run;
/*view dataset*/
proc print data=original_data;
Nous pouvons utiliser le code suivant pour extraire uniquement les numéros de chaque nom de cours :
/*extract numbers from course column*/
data new_data;
set original_data;
course_number_only = compress(course, '', 'A');
run;
/*view results*/
proc print data=new_data;
Notez que la nouvelle colonne appelée course_number_only contient uniquement les nombres des chaînes de la colonne cours .
Si vous souhaitez plutôt extraire uniquement les caractères de chaque chaîne, vous pouvez utiliser la fonction COMPRESS avec le modificateur ‘d’ :
/*extract characters from course column*/
data new_data;
set original_data;
course_characters_only = compress(course, '', 'd');
run;
/*view results*/
proc print data=new_data;
Notez que la nouvelle colonne appelée course_characters_only contient uniquement les nombres des chaînes de la colonne cours .
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 normaliser les données dans SAS
Comment identifier les valeurs aberrantes dans SAS
Comment créer des tableaux de fréquences dans SAS