2 Question: Différence numérique variable en SAS

question créée à Wed, May 8, 2019 12:00 AM

Mon code fonctionnait bien jusqu'à ce que j'ajoute la dernière ligne pour les 5 ans et plus. Est-ce que quelqu'un sait ce qui ne va pas avec cette ligne? Je vous remercie.

data  Work.File ;

set Work.File;

Female =(Sex ='F');
Male = (Sex ='M');
Age1=(age=1);
Age2=(age=2);
Age3=(age=3);
Age4=(age=4);
Age5+=(age='5+');


run;
    
0
2 réponses                              2                         

Le nom d'une variable SAS a certaines restrictions, vous ne pouvez pas avoir de signe +. De plus, l'âge devrait être une variable numérique. Vous pouvez écrire la dernière ligne en tant que:

Age5Plus=(age>=5);
    
1
2019-05-08 16: 43: 14Z
  1. 2019-05-08 17: 32: 18Z
  2. oh, dans mes données, on l'appelle en réalité 5+, donc je ne pense pas que 6,7,8 etc.
    2019-05-08 18: 35: 21Z
  3. L'âge est-il une variable de caractère dans vos données?
    2019-05-08 18: 39: 43Z
  4. variable de caractère? c'est comme 1,2,3 .... 65 +
    2019-05-08 18: 43: 56Z
  5. Il fonctionne maintenant après avoir changé 5+ en 5plus. Merci!
    2019-05-08 18: 44: 13Z
"Age5+"n=(age>=5);

fonctionnerait également après avoir défini

options validvarname=any;

mais que vous devez échapper à ce nom chaque fois que vous utilisez cette variable

    
0
2019-05-09 06: 47: 59Z
source placée ici