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

SAS Base Discussion :

Créer une variable à partir d'une autre


Sujet :

SAS Base

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Avril 2012
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Avril 2012
    Messages : 34
    Par défaut Créer une variable à partir d'une autre
    Bonjour,

    voilà je tente de créer une variable "var" qui prendra les modalités que selon celles d'une autre variables "browser" (déjà créée).

    Par exemple, pour chaque modalité "Safari" de la variable "browser", j'aimerai que dans ma nouvelle variable, il y ait "B1", pour la modalité "Mozilla", "B2", etc..

    voici mon premier code mais je ne sais pas si je suis dans la bonne voie si vous pourriez m'aider merci.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    data test2;
    	set test;
    	input var $ aff1 aff2;
    	if browser='Safari' then var='B1';
    run;

  2. #2
    Membre Expert
    Avatar de MEGAMIND2
    Homme Profil pro
    Paris
    Inscrit en
    Janvier 2011
    Messages
    1 029
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Paris

    Informations forums :
    Inscription : Janvier 2011
    Messages : 1 029
    Par défaut
    Salut Nina,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    if browser in ("Mozilla", "B2" ) then var='B1';

  3. #3
    Expert confirmé
    Avatar de olivier.decourt
    Homme Profil pro
    Formateur R/SAS/statistiques
    Inscrit en
    Avril 2008
    Messages
    2 064
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France

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

    Informations forums :
    Inscription : Avril 2008
    Messages : 2 064
    Par défaut
    Pas besoin de l'instruction INPUT, qui sert quand on lit un fichier externe (tu lis déjà une table SAS avec l'instruction SET).
    La programmation IF THEN ELSE peut être effectivement une solution. Maintenant si tu as de nombreux cas, tu peux aussi explorer une syntaxe SELECT WHEN OTHERWISE, ou passer par un format personnalisé.

  4. #4
    Membre averti
    Profil pro
    Inscrit en
    Avril 2012
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Avril 2012
    Messages : 34
    Par défaut
    ok ok merci de vos réponses.

    si maintenant je souhaite afficher des numéros chronologiques à la suite de chaque modalité d'une autre variable, comment puis-je procéder ?

    Par exemple :

    COULEUR POSITION (nouvelle variable)
    orange 1
    orange 2
    orange 3
    bleu 1
    bleu 2
    rose 1
    rose 2
    jaune 1

  5. #5
    Membre Expert
    Avatar de MEGAMIND2
    Homme Profil pro
    Paris
    Inscrit en
    Janvier 2011
    Messages
    1 029
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Paris

    Informations forums :
    Inscription : Janvier 2011
    Messages : 1 029
    Par défaut
    Je n'ai pas testé:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    Proc sort data=_table;
    by Couleur;
    run;
     
    data _table;
    set _table;
    retain position 0;
    by couleur;
    position=position+1;
    run;

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Avril 2012
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Avril 2012
    Messages : 34
    Par défaut
    merci pour le code mais la variable compteur affiche tous les numéros d'observation chronologiquement (de 1 à N observations).

    Cependant, je souhaite que le compteur recommence à chaque fois qu'il croise une nouvelle couleur.

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

Discussions similaires

  1. [MySQL] créer deux variables à partir d'une variable
    Par subran dans le forum PHP & Base de données
    Réponses: 3
    Dernier message: 01/06/2014, 10h42
  2. Réponses: 1
    Dernier message: 20/05/2014, 09h51
  3. [JSP] Créer nom variable à partir d'une autre variable
    Par siva27 dans le forum Servlets/JSP
    Réponses: 6
    Dernier message: 30/10/2013, 09h08
  4. [Batch] Créer une chaine à partir d'une variable et d'une autre chaine
    Par mlle lain dans le forum Scripts/Batch
    Réponses: 1
    Dernier message: 10/11/2009, 16h26
  5. Réponses: 2
    Dernier message: 29/06/2006, 13h58

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