Just one more piece of advice: It's always helpful for yourself and for people who read or work with your programs to keep the code consistent, even in cases where this consistency is not necessary for proper functioning.
You bother to format variable BIRTDATE nicely, although this variable is not kept (hence dropped) anyway, so that the assigned format will never be effective.
It looks like variable PATDOB takes over from BIRTDATE. If it's just a change of names, you can use a RENAME statement (or RENAME= dataset option) to achieve this more easily.
It's a bit odd that neither the just created numeric date variable PATDOB (patient's date of birth, I guess) is used in the calculation of PATAGE (presumably patient's age), nor the numeric date variable ADMDATE. Instead, you use two seemingly similar variables N_PATDOB and N_ADMDATE. Does the "N_" prefix, by any chance, stand for "numeric", i.e. SAS date value as opposed to a date in a human-readable format? If so, what is the difference to PATDOB and ADMDATE, then?
... View more