Hi,
I have a question about how to calculate the numbers of specific days between two dates? For example, row 1 of the listed data has 34 Mondays plus Wednesdays and Saturdays between 8/29/2016 and 11/15/2016, how to program it?
d_start1 | d_end1 |
8/29/2016 | 11/15/2016 |
8/29/2016 | 12/10/2016 |
8/29/2016 | 12/20/2016 |
8/29/2016 | 12/20/2016 |
8/29/2016 | 8/30/2016 |
8/29/2016 | 11/9/2016 |
8/29/2016 | 12/20/2016 |
8/29/2016 | 12/20/2016 |
8/29/2016 | 12/20/2016 |
8/29/2016 | 11/16/2016 |
Thank you.
Ying Ker
There may be shorter ways, but brute force is always a possibility:
n_Mondays=0;
n_Wednesdays=0;
n_Saturdays=0;
do i=d_start to d_end;
wd = weekday(i);
if wd=2 then n_Mondays + 1;
else if wd=4 then n_Wednesdays + 1;
else if wd=7 then n_Saturdays + 1;
end;
Thank you.
Don't miss out on SAS Innovate - Register now for the FREE Livestream!
Can't make it to Vegas? No problem! Watch our general sessions LIVE or on-demand starting April 17th. Hear from SAS execs, best-selling author Adam Grant, Hot Ones host Sean Evans, top tech journalist Kara Swisher, AI expert Cassie Kozyrkov, and the mind-blowing dance crew iLuminate! Plus, get access to over 20 breakout sessions.
Need to connect to databases in SAS Viya? SAS’ David Ghan shows you two methods – via SAS/ACCESS LIBNAME and SAS Data Connector SASLIBS – in this video.
Find more tutorials on the SAS Users YouTube channel.