US working days

2 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.

Categories

Find more on Dates and Time in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!