BookmarkSubscribeRSS Feed
Marcate
Calcite | Level 5

I would like to calculate the working days interval between two columns of a working table.

The idea is to create a table that will use informations from two other tables as follow: one with the list of the holidays of the year and another that contains the dates that must be compared. How do I have to proceed? 

2 REPLIES 2
Shmuel
Garnet | Level 18

I did it in two steps:

 

1) using table of non working dates - create a format (NWD.) with

     each non working date translated to 0 and OTHER translated to 1.
    Do it once, for the whole period of years including some future years.

 

2) calculate working days (WDS) from given dates: from FDT to UDT by:

         WDS = 0;

         do date = FTD to UDT;

              WDS = WDS + input(put(date,NWD.),1.);

         end;

Patrick
Opal | Level 21

SAS offers quite a few very useful calendar functions like intnx() and intck() which allows you get such calculations done.

 

If you have your own holiday calendar then you must first create a "custom interval" though. Have a look into the Custom Intervals section under the following link: http://www.sascommunity.org/wiki/Generating_Holiday_Lists 

 

SAS Innovate 2025: Save the Date

 SAS Innovate 2025 is scheduled for May 6-9 in Orlando, FL. Sign up to be first to learn about the agenda and registration!

Save the date!

How to Concatenate Values

Learn how use the CAT functions in SAS to join values from multiple variables into a single value.

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
  • 2 replies
  • 1162 views
  • 1 like
  • 3 in conversation