I have 2 separate variables for age, month and year of birth. I want to categorize it into (40-49, 50-59, 60+). I am not sure how to format this new variable? I do not have day of birth.
Thank you!
@racekarrz2 wrote:
I have 2 separate variables for age, month and year of birth. I want to categorize it into (40-49, 50-59, 60+). I am not sure how to format this new variable? I do not have day of birth.
Thank you!
You need to assume some day of the month for their BIRTH to generate a DATE OF BIRTH. Perhaps the first of the month?
You need a second DATE to be able to calculate AGE from a DATE OF BIRTH. Perhaps the day you run the program?
data want;
set have;
dob = mdy(month,1,year);
age = intnx('year',dob,today(),'s');
format dob date9.;
run;
To analyze the age groups create a format.
proc format ;
value agegrp
low-39='Too young'
40-50='40-50'
50-59='50-59'
60-high='60+'
other='Invalid Age'
;
run;
It's finally time to hack! Remember to visit the SAS Hacker's Hub regularly for news and updates.
Learn how use the CAT functions in SAS to join values from multiple variables into a single value.
Find more tutorials on the SAS Users YouTube channel.
Ready to level-up your skills? Choose your own adventure.