SAS : convertir un chiffre en caractère avec des zéros non significatifs



Vous pouvez utiliser la syntaxe de base suivante pour convertir une variable numérique en variable de caractère avec un nombre spécifique de zéros non significatifs dans SAS :

data new_data;
    set original_data;
    employee_ID = put(employee_ID, z10.);
    format employee_ID z10.;
run;

Cet exemple particulier convertit la variable numérique appelée Employee_ID en une variable de caractère avec suffisamment de zéros non significatifs pour que Employee_ID ait une longueur égale à 10.

L’exemple suivant montre comment utiliser cette syntaxe dans la pratique.

Exemple : Convertir un chiffre en caractère avec des zéros non significatifs dans SAS

Supposons que nous disposions de l’ensemble de données suivant dans SAS qui montre les ventes totales réalisées par divers employés d’une entreprise :

/*create dataset*/
data original_data;
    input employee_ID sales;
    datalines;
4456 12
4330 18
2488 19
2504 11
2609 33
2614 30
2775 23
2849 14
;

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

Supposons maintenant que nous souhaitions convertir la variable appelée Employee_ID en une variable de caractères avec suffisamment de zéros non significatifs pour que chaque valeur de la colonne ait une longueur de 10.

Nous pouvons utiliser la syntaxe suivante pour ce faire :

/*create new dataset with employee_ID as character with leading zeros*/
data new_data;
    set original_data;
    employee_ID = put(employee_ID, z10.);
    format employee_ID z10.;
run;

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

Nous pouvons voir que la variable employe_ID dans le nouvel ensemble de données contient suffisamment de zéros non significatifs pour que chacune des valeurs ait une longueur de 10.

Pour ajouter un nombre différent de zéros non significatifs, remplacez simplement z10 par une valeur différente.

Par exemple, nous pourrions utiliser z15 pour ajouter suffisamment de zéros non significatifs pour que chacune des valeurs de la colonne Employee_ID ait une longueur de 15 :

/*create new dataset with employee_ID as character with leading zeros*/
data new_data;
    set original_data;
    employee_ID = put(employee_ID, z15.);
    format employee_ID z15.;
run;

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

Chacune des valeurs de la colonne Employee_ID a désormais une longueur de 15.

Ressources additionnelles

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

SAS : Comment renommer des variables
SAS : Comment convertir une variable numérique en date
SAS : Comment convertir une variable de caractère en numérique

Ajouter un commentaire

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