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

Débutez Discussion :

If then ne marche pas


Sujet :

Débutez

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    octobre 2019
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 21
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : octobre 2019
    Messages : 13
    Points : 5
    Points
    5
    Par défaut If then ne marche pas
    Bonjour à tous,

    Je suis confronté à un petit problème, j'ai une table avec 3 variables, dont une nommée pays. J'aimerais créer une variables booléenne pour qu'à chaque fois qu'il y ait le pays BE (belgique) j'ai 1 sinon 0. J'ai donc écrit le code ci-dessous

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Data country;
    Set country;
    If pays=BE then euro=1;
    Else euro=0;
    Run;
    Problème : j'ai des 1 partout, même pour les pays qui ne sont pas la Belgique, j'ai modifié et mis

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Data country;
    Set country;
    If pays="BE" then euro=1;
    Else euro=0;
    Run;
    Et cette fois ci je n'ai que des 0 ! Pouvez vous me dire ce qui ne va pas ?
    Bonne soirée

  2. #2
    Modérateur

    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    février 2011
    Messages
    1 623
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : Conseil

    Informations forums :
    Inscription : février 2011
    Messages : 1 623
    Points : 3 393
    Points
    3 393
    Par défaut
    Hello,
    ça dépend de ce que t'as comme données dans ta table. Tu peux monter quelques valeurs ?
    N'oubliez pas de consulter les FAQ SAS et les cours et tutoriels SAS
    N'oubliez pas de mettre votre message à si la solution donnée résout votre problème

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    octobre 2019
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 21
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : octobre 2019
    Messages : 13
    Points : 5
    Points
    5
    Par défaut
    Bonjour, ma table est de la forme suivante

    Pays recherche annee
    BE 1468 1983
    BE 1598 1984
    BE 1777 1985
    ....
    DE 15108 1983
    DE 17183 1984
    DE 18786 1985

    La variable pays est de type character, recherche et annee en numerique

  4. #4
    Expert confirmé
    Avatar de olivier.decourt
    Homme Profil pro
    Formateur R/SAS/statistiques
    Inscrit en
    avril 2008
    Messages
    1 849
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France

    Informations professionnelles :
    Activité : Formateur R/SAS/statistiques
    Secteur : Conseil

    Informations forums :
    Inscription : avril 2008
    Messages : 1 849
    Points : 4 101
    Points
    4 101
    Par défaut
    Bonjour.
    La valeur doit être entre guillemets : IF pays = "BE" ...
    Sans les guillemets, SAS imagine que BE est le nom d'une variable (il doit y avoir un message NOTE : variable BE is uninitialized dans la Log).
    Bon courage.
    Olivier

  5. #5
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    octobre 2019
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 21
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : octobre 2019
    Messages : 13
    Points : 5
    Points
    5
    Par défaut
    Bonjour, j'ai essayé pays="BE" et cette fois ci j'ai des 0 partout alors que je devrais avoir 1 pour BE.

  6. #6
    Modérateur

    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    février 2011
    Messages
    1 623
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : Conseil

    Informations forums :
    Inscription : février 2011
    Messages : 1 623
    Points : 3 393
    Points
    3 393
    Par défaut
    Hello,
    Rajoute un compress, left,right, trim, strip... t'as peut être des blancs ou des tabulations.
    N'oubliez pas de consulter les FAQ SAS et les cours et tutoriels SAS
    N'oubliez pas de mettre votre message à si la solution donnée résout votre problème

  7. #7
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    octobre 2019
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 21
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : octobre 2019
    Messages : 13
    Points : 5
    Points
    5
    Par défaut
    D'accord, mais je les rajoute comment et où ? Mon prof est plutôt du genre débrouillez vous, sauf que sur internet il n'y a pas tout ey on ne comprend pas forcément tout^^

  8. #8
    Modérateur

    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    février 2011
    Messages
    1 623
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : Conseil

    Informations forums :
    Inscription : février 2011
    Messages : 1 623
    Points : 3 393
    Points
    3 393
    Par défaut
    Citation Envoyé par Inconnu21 Voir le message
    Mon prof est plutôt du genre débrouillez vous
    et il a raison.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    IF compress(pays)="BE"
    N'oubliez pas de consulter les FAQ SAS et les cours et tutoriels SAS
    N'oubliez pas de mettre votre message à si la solution donnée résout votre problème

  9. #9
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    octobre 2019
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 21
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : octobre 2019
    Messages : 13
    Points : 5
    Points
    5
    Par défaut
    Ça ne marche pas et ça supprime mes observations^^ le code que je rentre est:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    Data country;
    Set country;
    If compress(pays)="BE";
    If pays="BE" then euro=1;
    Else euro=0;
    Run;

  10. #10
    Modérateur

    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    février 2011
    Messages
    1 623
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : Conseil

    Informations forums :
    Inscription : février 2011
    Messages : 1 623
    Points : 3 393
    Points
    3 393
    Par défaut
    J'ai rajouté un UPCASE au cas où.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    Data country;
    Set country;
    If compress(upcase(pays))="BE"
    then euro=1;
    Else euro=0;
    Run;
    N'oubliez pas de consulter les FAQ SAS et les cours et tutoriels SAS
    N'oubliez pas de mettre votre message à si la solution donnée résout votre problème

  11. #11
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    octobre 2019
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 21
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : octobre 2019
    Messages : 13
    Points : 5
    Points
    5
    Par défaut
    Non plus 😅 ça me supprime encore toutes les observations, je vois vraiment pas à mon niveau ce qui ne va pas

  12. #12
    Modérateur

    Homme Profil pro
    Consultant en Business Intelligence
    Inscrit en
    février 2011
    Messages
    1 623
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Consultant en Business Intelligence
    Secteur : Conseil

    Informations forums :
    Inscription : février 2011
    Messages : 1 623
    Points : 3 393
    Points
    3 393
    Par défaut
    J'ignore ce que t'as écrit mais pour moi cela fonctionne, t'as peut être écrasé ta table de départ.

    Voici un exemple :
    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
     
     
    data country;
    	input pays $20.;
    	cards;
    ES 
    DE 
    BE 
    FR	
    SZ	
    IT	
    BE   
    BG
    IR
    LN
    be
    fr
    ;
    run;
     
    Data country;
    	Set country;
     
    	If compress(upcase(pays))="BE" then
    		euro=1;
    	Else euro=0;
    Run;
    N'oubliez pas de consulter les FAQ SAS et les cours et tutoriels SAS
    N'oubliez pas de mettre votre message à si la solution donnée résout votre problème

  13. #13
    Futur Membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    octobre 2019
    Messages
    13
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 21
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : octobre 2019
    Messages : 13
    Points : 5
    Points
    5
    Par défaut
    C'est bon ça marche !!! Merci infiniment, juste pour savoir, le code du coup il sert à enlever les blancs, tabulations, ect ? Si ça ne vous derange pas j'ai encor un petit problème (mon post https://www.developpez.net/forums/d2...ux-croissance/) si vous avez le temps^^ en tout cas merci !!!

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

Discussions similaires

  1. If then qui ne marche pas
    Par PauseKawa dans le forum Access
    Réponses: 6
    Dernier message: 11/07/2006, 09h12
  2. 'SHOW TABLES' marche pas sous postgresql !?
    Par fet dans le forum PostgreSQL
    Réponses: 4
    Dernier message: 13/05/2004, 09h28
  3. Réponses: 9
    Dernier message: 07/05/2003, 12h57
  4. [GifDecoder] marche pas dans applet avec IE
    Par formentor dans le forum Applets
    Réponses: 2
    Dernier message: 06/05/2003, 10h43
  5. Sysdate qui marche pas ??
    Par StouffR dans le forum Langage SQL
    Réponses: 4
    Dernier message: 28/08/2002, 13h23

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