options source2 ; %inc 'Lexis.sas' ; %inc 'PYtab.sas' ; * A (very) small cohort study ; data a ; input id entry exit fail ; informat entry exit ddmmyy8. ; format entry exit ddmmyy10. ; cards ; 1 14/07/52 13/03/91 1 2 03/04/41 17/07/68 2 3 23/03/56 21/05/96 0 4 24/07/49 23/06/99 1 5 . 24/12/97 0 6 . . 1 7 11/03/55 13/04/87 . 8 14/07/52 01/01/56 0 9 14/07/52 01/01/56 1 ; run ; proc print data = a ; run ; * Split follow-up in intervals after entry ; %Lexis ( data = a, out = b, origin = entry, scale = 365.25, breaks = %str( 0.5,1,3,4,5,7,10,12,13,35,50 ), left = tfe, right = right, lint = length, os_left = olf, os_right = ort, os_lint = olg, cint = icens, nint = intno, other = %str( format olf ort ddmmyy10. ; label tfe = "Time since entry" ; ) ) ; proc contents data = b ; run ; proc print data = b ; run ; proc print data = discrd ; run ; %PYtab( data=b, class=tfe ) ; * Split the time along calendar time axis, note the scale for risk time: it is days as enter and exit are date variables ; %Lexis ( data = a, breaks = %str('7jan49'd to '9dec95'd by 3*365+366, '9dec97'd) ) ; proc print data = a ; run ;