Calculate n of Weekday from Date since Date

Accepted Solution Solved
Reply
Occasional Contributor
Posts: 15
Accepted Solution

Calculate n of Weekday from Date since Date

Hello..

Quick Example:

Date A = 31Dec2012

Date B = 12Dec2012

Then I want to know which nth Weekday Date A is since Date B

In this example Date A would be the 3rd Monday since Date B.

Is there anyway to calculate this automatically? Output like 3-2 (3rd-Monday)

Regards,

Raphael


Accepted Solutions
Solution
‎01-04-2013 11:10 AM
Occasional Contributor
Posts: 15

Re: Calculate n of Weekday from Date since Date

DATA _NULL_;

  DATEA='31DEC2012'D;

  DATEB='12DEC2012'D;

  VAR=COMPRESS(INTCK('WEEK', DATEB, DATEA)||"-"||WEEKDAY(DATEA));

  PUT VAR;

RUN;

View solution in original post


All Replies
Super User
Posts: 10,552

Re: Calculate n of Weekday from Date since Date

You may be able to accomplish this using a combination of INTCK which returns intervals between SAS date values such as weeks, and the WEEKDAY function which will return day of the week of a SAS date value. Check the online help for syntax, intervals supported and starts (not everyone considers the week to start on the same day).

Occasional Contributor
Posts: 15

Re: Calculate n of Weekday from Date since Date

It doesn't matter in this situation on which day the week starts. "Check online help"-Answers are useless. Thanks anyway.

Frequent Contributor
Posts: 81

Re: Calculate n of Weekday from Date since Date

Check out the below code and see if it works for you.

data one;

  length output $10;

  date_a = '31Dec2012'd;

  date_b = '12Dec2012'd;

  weeka = week(date_a,'u');

  weekdaya = weekday(date_a);

  weekb = week(date_b,'u');

  output = strip(put(weeka-weekb,best.))||'-'||strip(put(weekdaya,best.));

  format date_a date_b date9.;

run;

Occasional Contributor
Posts: 15

Re: Calculate n of Weekday from Date since Date

Bit complicated :smileysilly:

Will post my solution.. Bit smaller.. But thanks Smiley Wink

Solution
‎01-04-2013 11:10 AM
Occasional Contributor
Posts: 15

Re: Calculate n of Weekday from Date since Date

DATA _NULL_;

  DATEA='31DEC2012'D;

  DATEB='12DEC2012'D;

  VAR=COMPRESS(INTCK('WEEK', DATEB, DATEA)||"-"||WEEKDAY(DATEA));

  PUT VAR;

RUN;

Super User
Posts: 17,963

Re: Calculate n of Weekday from Date since Date

Don't feed the trolls...

🔒 This topic is solved and locked.

Need further help from the community? Please ask a new question.

Discussion stats
  • 6 replies
  • 333 views
  • 1 like
  • 4 in conversation