SAS WEEKDAY Obtener el día de la semana de una fecha.

Programacion SAS 3

En la programación SAS, cuando se tiene la necesidad de conocer cual fue el día de la semana de una determinada fecha, podemos implementar el comando weekday, en combinación con un formato. Weekday nos da como resultado el numero del día de la semana de una fecha, comenzando con 0 para el día domingo.

 

Sintaxis:

<nueva variable 1> = WEEKDAY(<campo fecha>) ;
<nueva variable 2> = YEAR(<campo fecha>) ;
<nueva variable 3> = MONTH(<campo fecha>) ;

 

Ejercicio:

Se lleva el registro de accidentes de vehículos, y surge la necesidad de conocer la estadística de cuantos accidentes han ocurrido durante los años de registros, y cual de los días de la semana es el mas accidentado.

 

Ejemplo:

DATA ACCIDENTES ;
 SET ACCIDENTES ; 
 DAY = 0 ;
 YEAR = 0 ;
 DAY = WEEKDAY(FECHA) ;
 YEAR = YEAR(FECHA) ;
RUN ;

PROC TABULATE DATA = ACCIDENTES ;
 CLASS YEAR DAY ;
 VAR ID_ACCIDENTE ;
 TABLE YEAR,DAY*(ID_ACCIDENTE*N) ;
 FORMAT DAY DAYF. ;
RUN;

PROC FORMAT ;
VALUE DAYF
1 = "DOM"
2 = "LUN"
3 = "MAR"
4 = "MIE"
5 = "JUE"
6 = "VIE"
7 = "SAB" ;

 

PROC TABULATE genera una tabla descriptiva donde el eje vertical desglosa el año, y el eje horizontal desglosa el día, en la intersección de los ejes se muestra el total de accidentes ocurridos en ese día de la semana del año. También checa la función del PROC FORMAT, otras funciones para trabajar con fechas son el INTCK y el INTNX.

 

¿Ya conocías la funcionalidad del PROC TABLATE en SAS?

¿Que te parecio el contenido?