Trucos SAS. Calcular una edad
No penséis que restar dos fechas y obtener una diferencia en años entre ellas es un tema baladí. Ejecutad el siguiente código SAS para calcular la diferencia en años: data uno; format fecha1 ddmmyy10.; do fecha1 = 9000 to today(); output; end; run; data uno_edad; set uno; format fecha2 ddmmyy10.; fecha2 = "15MAY2014"d; edad = int((fecha2 - fecha1) / 365.25); run; data uno_filtro; set uno_edad; if month(fecha1) = 5 and day(fecha1) = 15; run; Visualizad el conjunto de datos uno_filtro; la serie de edad asusta: 28, 28, 27, 25, 24, 24… Está claro que algo falla. Hace ya tiempo que hablamos de ello en este mismo blog. Los ceros y los unos con los que guardan estas máquinas las cosas a veces nos juegan estas malas pasadas. Para evitar este problema, os sugiero que empleéis la función de SAS YRDIF con la base 'AGE'. Replicamos el ejemplo: ...