Tip Semanal 010: "Unir 2 columnas separadas de fecha y hora"
Posted 08-25-2021 03:56 PM
(2534 views)
SAS proporciona varias funciones de fechas para realizar ciertas diversas operaciones. En este ejemplo presentamos una alternativa para unir 2 columnas, una de fecha y otra de hora, utilizando el paso 'Paso Data' o el 'Proc SQL'. Además, proporcionamos dos opciones de formato fecha-hora. Puede ejecutar el código y revisar el resultado.
/****************************************************************************/
/* Unir 2 columnas separadas de fecha y hora */
/* Une 2 columnas separadas de fecha y hora en una única columna fecha-hora */
/* agregando formatos. */
/* Ejemplo utilizando el Paso Data y también el Proc SQL */
/****************************************************************************/
/*-------------------*/
/* inicio del código */
/*-------------------*/
/*--------------------------*/
/* Utilizando el Paso Data */
/*--------------------------*/
data tabla_fecha_hora_DataStep;
fecha='23Jan2021'd;
hora='13:09't;
format fecha ddmmyy10. hora timeampm.;
fecha_hora=dhms(fecha, 0, 0, hora); /* la función DHMS concatena las variables fecha y hora */
format fecha_hora b8601dt.; /* formato fecha-hora solamente separado por una 'T' */
run;
/*--------------------------*/
/* Utilizando el Proc SQL */
/*--------------------------*/
proc sql;
Create table tabla_temp_SQL (fecha num format=YYMMDDN., hora num format=timeampm.); /* crea la tabla 'tabla_temp_SQL' */
insert into tabla_temp_SQL
values('23Jan2021'd,'13:09't)
;
Create table tabla_fecha_hora_SQL as
Select
t1.fecha,
t1.hora,
dhms(fecha, 0, 0, hora) as fecha_hora_sql format=is8601dt. /* formato fecha-hora separado por 'T', '-' y ':' */
From tabla_temp_SQL t1
;
Drop table tabla_temp_SQL /* elimina la tabla 'tabla_temp_SQL' */
;
quit;
/*-------------------*/
/* fin del código */
/*-------------------*/
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.