US working days

6 views (last 30 days)
joseph Frank
joseph Frank on 5 Mar 2011
Hi,
How can I get the US working days starting 1997 in matlab ?

Answers (2)

the cyclist
the cyclist on 5 Mar 2011
I don't think there is any simple way to do this within core MATLAB (where by "simple" I do not include coding the algorithm yourself). A cursory search of the FEX also did not turn anything up.
Do you have the Financial Toolbox at your disposal? Scanning the function list here: http://www.mathworks.com/help/toolbox/finance/f6-213137.html#f0-222567, it looks it might have what you need.

Jan
Jan on 5 Mar 2011
Here you find the federal holidays for 1997 to 2020:
I do not see a more efficient way than counting them manually and subtract them from the number of Monday to Friday per year:
for year = 1997:2020
Jan01 = datenum(sprintf('01-Jan-%04d', year));
Dec31 = datenum(sprintf('31-Dec-%04d', year));
w = mod((Jan01:Dec31) - 2, 7) + 1; % 1=Sun, 7=Sat
s = sum(q > 1 & q < 7);
fprintf('%d: %d\n', year, s);
end
  2 Comments
the cyclist
the cyclist on 6 Mar 2011
There's a small typo in the line where you define w ("Dez31" instead of "Dec31").
Jan
Jan on 6 Mar 2011
@Cyclist: Fixed. Thanks.

Sign in to comment.

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!