SAS : Comment modifier la longueur des variables de caractères



Le moyen le plus simple de modifier la longueur des variables de caractères dans SAS consiste à utiliser les instructions ALTER TABLE et MODIFY dans PROC SQL .

Pour ce faire, vous pouvez utiliser la syntaxe de base suivante :

proc sql;
    alter table my_data
    modify team char(4);
quit;

Cet exemple particulier modifie la longueur de la variable de caractère appelée team dans l’ensemble de données appelé my_data pour avoir une longueur de 4 .

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

Exemple : modifier la longueur de la variable de caractères 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;
Cavs 12
Cavs 24
Heat 15
Cavs 26
Heat 14
Mavs 36
Mavs 19
Nets 20
Nets 31
;
run;

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

Nous pouvons utiliser PROC CONTENTS pour afficher la longueur de chaque variable de l’ensemble de données :

/*view length of each variable in dataset*/
proc contents data=my_data;

Le dernier tableau du résultat montre la longueur de chaque variable :

De ce tableau nous pouvons voir :

  • La variable points est une variable numérique d’une longueur de 8.
  • La variable team est une variable caractère d’une longueur de 8.

Supposons que nous souhaitions modifier la variable team pour avoir une longueur de 4.

Nous pouvons utiliser la syntaxe suivante pour ce faire :

/*change length of team variable to 4*/
proc sql;
    alter table my_data
    modify team char(4);
quit;

Nous pouvons les utiliser en utilisant à nouveau PROC CONTENTS pour afficher la longueur de chaque variable de l’ensemble de données :

/*view updated length of each variable in dataset*/
proc contents data=my_data;

Le dernier tableau du résultat montre la longueur de chaque variable :

Nous pouvons voir que la variable team a désormais une longueur de 4.

Il convient de noter qu’aucune des valeurs de la colonne équipe n’a été tronquée car le nom d’équipe le plus long avait une longueur de 4.

Cependant, si vous modifiiez la longueur de la variable d’équipe à 3, par exemple, alors le dernier caractère de certains noms d’équipe aurait été tronqué.

En utilisant cette méthode, aucun message d’avertissement n’apparaîtra en cas de troncature. Assurez-vous donc de connaître la longueur maximale des chaînes dans votre colonne de caractères avant d’utiliser cette méthode.

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

Ajouter un commentaire

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