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 :

Attribution de différentes valeurs a une meme variable


Sujet :

SAS Base

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Analyse système
    Inscrit en
    Octobre 2015
    Messages
    1
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Analyse système

    Informations forums :
    Inscription : Octobre 2015
    Messages : 1
    Points : 1
    Points
    1
    Par défaut Attribution de différentes valeurs a une meme variable
    Bonjour a tous,

    Premier message sur ce forum, et vraiment débutant dans SAS! J'ai fais des recherches un peu partout, y compris sur ce site, mais je ne trouve pas la réponse, alors je me lance.

    J'ai une table avec une variable, dont la valeur est déterminée selon d'autres variables. Mais, il reste des cas pour lesquels la valeur de la variable ne peut pas être déterminer. Elle prend alors une valeur par défaut. Mon objectif est d'attribuer une valeur a cette variable a chaque fois qu'elle prend la valeur par défaut. La règle serait la suivante:

    Dans 10% des cas, la variable = 2
    Dans 50% des cas, la variable = 3
    Dans le reste des cas, la variable = 4

    J'ai tenté avec RANUNI, sous la forme suivante:

    RAND = RANUNI(42);


    IF RAND LE 0.1 THEN VAR_A_DETERMINER= '2';
    ELSE IF RAND LE 0.5 THEN VAR_A_DETERMINER = '3';
    ELSE VAR_A_DETERMINER = '4';
    END;

    Ca attribue bien une valeur pour certaines observations, mais pas a toutes. Je ne maitrise vraiment pas RANUNI, alors je me demande si je l'utilise bien. Le seed a 42, je l'ai pris au 'pif'.

    Est-ce la bonne méthode?

    Merci!

  2. #2
    Membre expérimenté
    Inscrit en
    Novembre 2009
    Messages
    703
    Détails du profil
    Informations forums :
    Inscription : Novembre 2009
    Messages : 703
    Points : 1 311
    Points
    1 311
    Par défaut Attribution de différentes valeurs a une meme variable
    Bonjour,

    Votre programme est correct à la nuance près que pour avoir la valeur 3 dans 50% des cas il faut prendre les valeurs comprises entre 10% et 60%. Le choix du seed n'a pas d'importance.

    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
    data toto;
      do i=1 to 10000;
        output;
      end;
    run;
     
    data toto;
      set toto;
      RAND = RANUNI(42);
     
      IF RAND LE 0.1 THEN VAR_A_DETERMINER= '2';
      ELSE IF RAND LE 0.6 THEN VAR_A_DETERMINER = '3';
      ELSE VAR_A_DETERMINER = '4';
    run;
     
    proc freq data=toto;
      table VAR_A_DETERMINER / nocum missing;
    run;
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
                                   VAR_A_
                                   DETERMINER    Fréquence     Pourcentage
                                   ----------------------------------------
                                   2                 1015         10.15
                                   3                 4889         48.89
                                   4                 4096         40.96
    Le fait que vous ayez des données manquantes doit venir de votre sélection des observations à imputer.

    Cordialement,

    PS : Pour mettre en évidence votre code, vous pouvez le sélectionner et cliquer sur l'icône CODE (#).

Discussions similaires

  1. Réponses: 7
    Dernier message: 12/07/2013, 16h24
  2. Réponses: 3
    Dernier message: 19/06/2011, 13h54
  3. Parcourir les différentes valeurs d'une énumération
    Par mister3957 dans le forum Général VBA
    Réponses: 4
    Dernier message: 09/03/2008, 09h07
  4. Réponses: 3
    Dernier message: 13/12/2006, 18h05
  5. [VBA-E]Mise en place de 2 valeurs dans une meme cellule
    Par baptbapt dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 25/08/2006, 15h06

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