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 :

Additionner des dates


Sujet :

SAS Base

  1. #1
    Nouveau Candidat au Club
    Femme Profil pro
    Inscrit en
    Décembre 2011
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Décembre 2011
    Messages : 3
    Points : 1
    Points
    1
    Par défaut Additionner des dates
    Bonjour,

    J'ai une variable nommée DATEV=JJ/MM/AAAA (ex:24/01/2012).
    Je voudrais créer une nouvelle variable DATER = DATEV + 14 jours , qui doit être sous la forme DATER=JJ/MM/AAAA , elle aussi.

    Quelqu'un connaitrait la procédure qui me permettrait d'additionner un nombre de jour à une date, pour avoir une autre date en sortie ?

    merci de votre aide,

  2. #2
    Membre chevronné
    Homme Profil pro
    Biostatisticien
    Inscrit en
    Juin 2009
    Messages
    1 206
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Irlande

    Informations professionnelles :
    Activité : Biostatisticien
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Juin 2009
    Messages : 1 206
    Points : 1 868
    Points
    1 868
    Par défaut
    Bonjour,

    Les dates sous SAS sont de type numerique. Il suffit tout betement d'additioner le nombre de jours voulu a ta variable initiale, dans une etape data.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    data NOUVELLETABLE;
     set TABORIGIN;
     
    DATER = DATEV + 14;
    run;
    Tu pourras trouver des posts traitant ce theme en effectuant des recherches sur le forum.

    Bon courage et reviens vers nous si tu ne t'en sors pas.

    Manoutz

  3. #3
    Nouveau Candidat au Club
    Femme Profil pro
    Inscrit en
    Décembre 2011
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Décembre 2011
    Messages : 3
    Points : 1
    Points
    1
    Par défaut
    merci de votre réponse rapide,

    en fait mon problème est que ma variable DATEV est sous format caractere et pas numérique. il faudrait que je trouve une fonction qui me transforme cette variable en nombre de jours (et donc en numérique), pour pouvoir y ajouter mes 14 jours et ensuite le retransformer en format DATE.

    suis-je plus clair

    je suis aussi en train de regarder dans le forum les topics sur la question, mais je ne trouve pas mon bonheur pour le moment.

    merci encore,

  4. #4
    Membre chevronné
    Homme Profil pro
    Biostatisticien
    Inscrit en
    Juin 2009
    Messages
    1 206
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Irlande

    Informations professionnelles :
    Activité : Biostatisticien
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Juin 2009
    Messages : 1 206
    Points : 1 868
    Points
    1 868
    Par défaut
    Je m'en doutais

    le principe est le meme sauf qu'il faut creer une nouvelle variable basee sur DATEV, mais de TYPE numerique, sur lequel tu peux appliquer un FORMAT (sinon tu n'auras qu'un nombre - pas de date)

    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 TABORIGIN;
     input DATEV $10.;
     cards;
     5
    123335
    1225
    1225
    ;
     
    DATA NOUVELLETABLE;
     SET TABORIGIN;
     
     format DATER DATEV_NUM date9.;
     
     DATEV_NUM=input(DATEV, best12.);
     
    DATER = DATEV_NUM + 14;
    run;

  5. #5
    Nouveau Candidat au Club
    Femme Profil pro
    Inscrit en
    Décembre 2011
    Messages
    3
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Décembre 2011
    Messages : 3
    Points : 1
    Points
    1
    Par défaut
    merci encore pour ta réponse,

    en fait mon autre problème était que ma variable de date n'était pas au format DATE, mais dans un format caractere.
    je m'en suis sortie avec ce bout de code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    data test;
    set ech.echsjtot(keep=datevisite);
    date2=input(DATEVISITE,DDMMYY10.);
    date3=date2+14;
    run;
     
    Data test2;
    set test;
    	format date3 DDMMYY10.;
    Run;
    et ça marche nikel .

    Merci encore pour le temps que tu as pris à me réponde

  6. #6
    Invité
    Invité(e)
    Par défaut
    t'aurai pu gérer tout dans la même DataStep:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    data test;
    format date2 DDMMYY10.;
    set ech.echsjtot(keep=datevisite);
    date2=input(DATEVISITE,DDMMYY10.) +14;
    run;

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

Discussions similaires

  1. additionner des valeurs entre 2 dates
    Par mgrizzly dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 21/04/2010, 16h38
  2. Réponses: 4
    Dernier message: 09/11/2009, 13h45
  3. Additionner des heures selon Date et heure
    Par samawati dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 11/04/2008, 19h47
  4. [Dates] Additionner des dates en PHP comme avec ADDTIME
    Par jeremie74 dans le forum Langage
    Réponses: 12
    Dernier message: 18/08/2006, 15h26
  5. [Dates] Additionner des datetimes
    Par Jim_Nastiq dans le forum Langage
    Réponses: 9
    Dernier message: 12/05/2006, 15h57

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