BookmarkSubscribeRSS Feed
🔒 This topic is solved and locked. Need further help from the community? Please sign in and ask a new question.
claireluen
Calcite | Level 5

I have variables in my data set for both the week number and year number.  I am looking for a way to convert them to a date column (MM/DD/YYYY or similar format).  I know how to convert from a date to week/year, but not vice versa.  Does anyone have any ideas?

1 ACCEPTED SOLUTION

Accepted Solutions
DBailey
Lapis Lazuli | Level 10

You might be able to use date math to get to the first day of the week

FirstOfWeek = mdy(1,1,yearnum) + (7 * ( weeknum - 1));

or

intnx('week',mdy(1,1,yearnum),weeknum-1);

View solution in original post

3 REPLIES 3
Reeza
Super User

WeekW. informat

Here's one way, but probably not the neatest:

(EDIT: I've assumed the day to be 1, the first of the week, but you could change that by changing the 01 and the end of week_year)

data have;

input year week ;

cards;

2001    23  

2001    24  

2003    45  

2014    5  

2005    36  

2006    45  

2007    3  

;

run;

data want;

    set have;

    week_year=compress(year||"W"||put(week, z2.)||"01");

    date_want=input(week_year, weekw9.);

    format date_want date9.;

run;

DBailey
Lapis Lazuli | Level 10

You might be able to use date math to get to the first day of the week

FirstOfWeek = mdy(1,1,yearnum) + (7 * ( weeknum - 1));

or

intnx('week',mdy(1,1,yearnum),weeknum-1);

claireluen
Calcite | Level 5

That was really helpful.  Thanks to both of you!

hackathon24-white-horiz.png

The 2025 SAS Hackathon has begun!

It's finally time to hack! Remember to visit the SAS Hacker's Hub regularly for news and updates.

Latest Updates

Creating Custom Steps in SAS Studio

Check out this tutorial series to learn how to build your own steps in SAS Studio.

Find more tutorials on the SAS Users YouTube channel.

SAS Training: Just a Click Away

 Ready to level-up your skills? Choose your own adventure.

Browse our catalog!

Discussion stats
  • 3 replies
  • 3876 views
  • 7 likes
  • 3 in conversation