Fluorite | Level 6

## Deriving AGE from YEAR of BIRTH

First, I do have a variable, year of birth (i.e. without days and months of births). Second, I would like to derive age from the stated variable based on today’s date. I’ve attempted the derivation using the following code but I’ve been unsuccessful.

``````Data myage;
set suvdata;
AGE=floor(YRDIF(RB080, today(),"AGE"));
run;``````

I shall be most grateful for your help.

1 ACCEPTED SOLUTION

Accepted Solutions
Super User

## Re: Deriving AGE from YEAR of BIRTH

The YRDIF function want two date values. So use the MDY function to create date

`AGE=floor(YRDIF(mdy(1,1,RB080), today(),"AGE"));`

would use January 1 as the date in the year.

3 REPLIES 3
Super User

## Re: Deriving AGE from YEAR of BIRTH

The YRDIF function want two date values. So use the MDY function to create date

`AGE=floor(YRDIF(mdy(1,1,RB080), today(),"AGE"));`

would use January 1 as the date in the year.

Fluorite | Level 6

## Re: Deriving AGE from YEAR of BIRTH

@ballardw, Thank you so very much.

Diamond | Level 26

## Re: Deriving AGE from YEAR of BIRTH

@Zacc wrote:

First, I do have a variable, year of birth (i.e. without days and months of births).

So in other words, you just have the year of birth, is that what you are saying? The value of your variable might look like 1978.

So you would compute the age via

``````data want;
set have;
age = 2022 - rb080;
run;``````
--
Paige Miller
Discussion stats
• 3 replies
• 834 views
• 0 likes
• 3 in conversation