Conversión de SAS de formato char a formato date

subarud Mensajes publicados 13 Estado Miembro -  
 sarah -
Hola,

Tengo un problema muy estándar en SAS: una variable cuyas fechas están escritas en el formato dd/mm/yyyy pero se consideran en formato carácter. No puedo convertirla al formato de fecha, ¿alguien puede ayudarme?

Gracias de antemano,

Subaru-d
Configuración: Windows 2000 Firefox 2.0 SAS V.9

3 respuestas

anonym
 
Prueba este programa,

data traite_date (drop = dia mes an);
set archivo;
format an $4.;
format dia mes $2.;
format date_new ddmmyy10. ;

dia = substr(date_ini,1,2) ;
mes = substr(date_ini,4,2) ;
an = substr(date_ini,7,4) ;
date_new = mdy(mes,dia,an);
run;
9
Stat_RR
 
¡Genial, yo también lo he usado!
Gracias
0
anonym
 
¡Super el programa! ¡Gracias! :-)
0
Nass
 
¡Gracias! Pero, ¿alguien puede explicarme cómo funciona? ^^ No conozco bien SAS y quiero intentar entender para el futuro...
0
sarah
 
y si tenemos la edad y queremos calcular la fecha de nacimiento sabiendo que la edad es por año y la fecha de nacimiento debe estar en formato DD/MM/YY.
pensé en restar la edad de la fecha actual.
he añadido en mi tabla una columna que calcula la fecha actual de la siguiente manera:
DATA adsl;
set adsl;
ATTRIB variable FORMAT=DDMMYY10. LABEL="Mi fecha";
variable=date();
RUN;
pero el problema es que para hacer la resta debo convertir "mi fecha" y "edad" en número de días.
¿alguien puede ayudarme con esto?
gracias.
0
steelspirit Mensajes publicados 275 Fecha de registro   Estado Miembro 80
 
Hay que utilizar la función INPUT con el formato correcto, es decir, DDMMYY10.

Steel

--

- ¿No has visto a Chloraine?
- ¿Quién es Chloraine? - ¡Ah Ah Ah!
5
coto
 
date= input(date,aammdd10.);
0