Bienvenu(e)! Identification Créer un nouveau profil

Recherche avancée

transformer une variable caractère en date

Envoyé par charleine 
Ce forum est en lecture seule. C'est une situation temporaire. Réessayez plus tard.
charleine
transformer une variable caractère en date
28 juillet 2008, 09:24
Bonjour,

La question habituelle, comment sous SAS transformer une variable caractère en date (Et plus précis en date sous la forme : annee)

Merci pour vos reponses
Re: transformer une variable caractère en date
03 septembre 2008, 18:37
bonjour charleine,

Si tu as stocké dans datechar="01JAN2009" en caractère tu peux la transformer en numérique grâce à un informat.

data toto;
datechar1="01JAN2009"; datenum1=input(datechar1,date9.);
datechar2="01/01/2009"; datenum2=input(datechar2,ddmmyy10.);
run;

datechar1 datenum1 datechar2 datenum2
01JAN2009 17898 01/01/2009 17898

tu peux bien sûr formatter ce 17898 avec le format qui te convient year4., mmddyy10. etc


Si tu as juste besoin de l'année, tu peux d'abord extraire les 4 derniers caractères avec la fonction substr puis la convertir en numérique

data tata;
datechar1="01JAN2009";
annee1char=substr(datechar1,6,4);
annee1num=input(annee1char,best8.);
run;

Ouala.
Re: transformer une variable caractère en date
13 juin 2011, 20:40
Merci bien Emmanuelle, ton commentaire a resolu mon problème aussi.
transformer des nombres en dates alphanumérique
18 juillet 2012, 15:41
Bonjour;

je demande comment convertir des nombres en dateS alphanumériqueS.

A chaque fois que j'applique le format date9, il crée les dates alphanumériques mais avec dates incorretes exemple: 16SEP2068 au lieu de 16SEP2008.
Re: transformer des nombres en dates alphanumérique
18 mars 2015, 19:07
Bonjour,

On dirait que tes dates sont en format windows/excel c'est à dire à partir de 1900 et non 1960 (comme pour SAS) enlève 60 années ou initialise par défaut la journée 1 de SAS au 1er janvier 1900 et non au 1er janvier 1960