IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macro Discussion :

Comparer deux valeurs d'un champ


Sujet :

Macro

  1. #1
    Membre du Club
    Inscrit en
    Janvier 2005
    Messages
    71
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Janvier 2005
    Messages : 71
    Points : 45
    Points
    45
    Par défaut Comparer deux valeurs d'un champ
    Bonjour,

    je suis débutante avec SAS et je me heurte à un problème ...
    Voila je voudrai simplement tester les champs de 2 observations ...
    Cependant apparement àprès chaque observation, il ne stocke pas les informations contenus dans les champs de l'obseration precendente ...

    Lorsque j'affiche ma table en sorti il y a un champs 'Obs' qui correspond à un indice mais je ne sais pas comment l'utiliser ...

    Il n'y pas beaucoup de chose sur SAS sur internet ... a part des stats et pour mon cas c'est plutot du data


    Merci d'avance

  2. #2
    Responsable SAS


    Inscrit en
    Septembre 2006
    Messages
    3 176
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 3 176
    Points : 16 157
    Points
    16 157
    Par défaut
    Que veux-tu faire exactement : comparer les valeurs d'une même variable ou comparer deux variables entre elles?
    Peux-tu nous donner ton prog data.

  3. #3
    Membre du Club
    Inscrit en
    Janvier 2005
    Messages
    71
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Janvier 2005
    Messages : 71
    Points : 45
    Points
    45
    Par défaut
    salut,
    je voudrai comparer 2 variable entre elles !
    enfin plus precisement 2 valeurs d'un même champs ...

    voila le code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
     
    data Gloria.ecg;
    set Gloria.ecg;
    by num_patient date heure ;
    	ctno='******';
    	subjno=num_patient;
    	visno=visno_1;
    	if ptm_1='-1:30' then ptm='-5400';
    	if ptm_1='-1:25' then ptm='-5100';
    	if ptm_1='-1:20' then ptm='-4800';
    	if ptm_1='2:00' then ptm='7200';
    	if ptm_1='4:00' then ptm='14400';
    	if ptm_1='10:00' then ptm='36000';
    	if ptm_1='24:00' then ptm='86400';
    	if ptm_1='48:00' then ptm='172800';
    	ecgtm=heure;
    	ecgdt=date;
    	ecgq=4;
    	if conclusion in(1105,1108)then ecg=0;
    	if conclusion=1109 then ecg=1;
    	if conclusion in (1101,1102,1110) then ecg=2;
    	ecgx=conc_lib;
    	ecgox='  ';
    	ecgetm=' ';
    	ecgpbtm=' ';
    	ecgpetm=' ';
    	ecgna=' ';
     
    	if (SUBSTRN(visitname, length(visitname), 1))='U'
    	then temp = SUBSTRN( visitname, 1, length( visitname)-1);
    	else temp='';
    	temp2= first.visitname;
    	temp3= last.visitname;
    run;
    Du coup comme je n'ai pas trouver de solution simple pour garder en mémoire la valeur d'un champs n-1, j'essaye de me depatouiller avec des tri ...

    merki

  4. #4
    Responsable SAS


    Inscrit en
    Septembre 2006
    Messages
    3 176
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 3 176
    Points : 16 157
    Points
    16 157
    Par défaut
    Si tu veux comparer les valeurs d'une même colonne il faut utiliser des marco-variables.

  5. #5
    Membre du Club
    Inscrit en
    Janvier 2005
    Messages
    71
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Janvier 2005
    Messages : 71
    Points : 45
    Points
    45
    Par défaut
    Ok je ne sais pas ce que c'est mais je vais le découvrir!
    merci de m'avoir aiguiller car je suis totalement novice en SAs!

  6. #6
    Responsable SAS


    Inscrit en
    Septembre 2006
    Messages
    3 176
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 3 176
    Points : 16 157
    Points
    16 157
    Par défaut
    Ce langage permet de contourner un des gros pb de SAS : à savoir qu'on ne peut comparer deux lignes entre elles. En effet SAS ne permet généralement que la comparaison entre deux colonnes.

  7. #7
    Responsable SAS


    Inscrit en
    Septembre 2006
    Messages
    3 176
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 3 176
    Points : 16 157
    Points
    16 157
    Par défaut
    Va voir des trucs genre : CALL SYMPUT, SYMGET et LET

  8. #8
    Membre du Club
    Inscrit en
    Janvier 2005
    Messages
    71
    Détails du profil
    Informations personnelles :
    Âge : 39

    Informations forums :
    Inscription : Janvier 2005
    Messages : 71
    Points : 45
    Points
    45
    Par défaut
    Merci bien !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [AC-2003] Comparer deux valeurs suivi d'actions
    Par Popperwin dans le forum VBA Access
    Réponses: 5
    Dernier message: 27/05/2009, 10h23
  2. [XL-2007] comparer deux valeurs issues de userform différentes
    Par labo33 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 12/05/2009, 22h13
  3. Comparer deux valeurs avec javascript (td caché et zone de texte)
    Par beegees dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 26/01/2009, 12h57
  4. [MySQL] Comparer deux valeurs depuis deux tables
    Par jbidou88 dans le forum PHP & Base de données
    Réponses: 5
    Dernier message: 03/03/2008, 14h20
  5. Réponses: 5
    Dernier message: 23/05/2007, 19h43

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo