SAS: fecha y hora

Las fechas IN SAS son un caso especial de valores numéricos. A cada día se le asigna un valor numérico específico a partir del 1 de enero de 1960. A esta fecha se le asigna el valor de fecha 0 y la fecha siguiente tiene un valor de fecha de 1 y así sucesivamente. Los días anteriores a esta fecha están representados por -1, -2 y así sucesivamente. Con este enfoque, SAS puede representar cualquier fecha en el futuro y cualquier fecha en el pasado.

Cuando SAS lee los datos de una fuente, convierte los datos leídos en un formato de fecha específico como se especifica en el formato de fecha. La variable para almacenar el valor de la fecha se declara con la información adecuada requerida. La fecha de salida se muestra utilizando los formatos de datos de salida.

SAS Fecha Informat

Los datos de origen se pueden leer correctamente utilizando información de fecha específica como se muestra a continuación. El dígito al final del informat indica el ancho mínimo de la cadena de fecha que se leerá completamente usando el informat. Un ancho menor dará un resultado incorrecto. con SAS V9, hay un formato de fecha genéricoanydtdte15. que puede procesar cualquier entrada de fecha.

Fecha de entrada Ancho de la fecha Informat
11/03/2014 10 mmddyy10.
11/03/14 8 mmddyy8.
11 de diciembre de 2012 20 worddate20.
14mar2011 9 fecha 9.
14-mar-2011 11 fecha 11.
14-mar-2011 15 anydtdte15.

Ejemplo

El siguiente código muestra la lectura de diferentes formatos de fecha. Tenga en cuenta que todos los valores de salida son solo números, ya que no hemos aplicado ninguna declaración de formato a los valores de salida.

DATA TEMP;
INPUT @1 Date1 date11. @12 Date2 anydtdte15. @23 Date3 mmddyy10.   ;
DATALINES;
02-mar-2012 3/02/2012 3/02/2012
;
PROC PRINT DATA = TEMP;
RUN;

Cuando se ejecuta el código anterior, obtenemos el siguiente resultado.

Formato de salida de fecha SAS

Las fechas después de ser leídas se pueden convertir a otro formato según lo requiera la pantalla. Esto se logra utilizando la declaración de formato para los tipos de fecha. Toman los mismos formatos que las informaciones.

Ejemplo

En el ejemplo siguiente, la fecha se lee en un formato pero se muestra en otro formato.

DATA TEMP;
INPUT  @1 DOJ1 mmddyy10. @12 DOJ2 mmddyy10.;
format  DOJ1 date11.  DOJ2 worddate20. ;
DATALINES;
01/12/2012 02/11/1998 
;
PROC PRINT DATA = TEMP;
RUN;

Cuando se ejecuta el código anterior, obtenemos el siguiente resultado.