How to find out no. of business days in a month using
macros.???(excluding weekends and holidays).
Answers were Sorted based on User's Feedback
Answer / aaa
%MACRO WORKDAYS(START,END);
DATA _NULL_;
FORMAT A B DDMMYY10.;
A = %SYSFUNC(INPUTN(&START,DDMMYY10.));
B = %SYSFUNC(INPUTN(&END,DDMMYY10.));
COUNT=0;
DO I = A TO B;
IF WEEKDAY(I) IN (2,3,4,5,6) THEN
COUNT=COUNT+1;
END;
PUT 'NUMBER OF WORKING DAYS BETWEEN ' A 'AND ' B '= ' COUNT;
RUN;
%MEND;
%WORKDAYS(01/10/2014,31/10/2014);
| Is This Answer Correct ? | 7 Yes | 0 No |
Answer / oanhntt
first of all, identify the last day of month (using this
intnx('month',d,1)-1). after that make a loop through 1 to
end of month, check if day in loop is weekend or not, using
another variable to count this number.
Regarding to the holidays, except some popular holidays which
I suggest using an external file/dataset to track it, use
this file to identify holidays.
| Is This Answer Correct ? | 1 Yes | 3 No |
Difference b/n proc means and proc summary procedures?
Is the physical structure of the data set in the same orientation as the report? Do you need to reshape the data sets? What method should you use to reshape the data–DATA steps,PROC TRANSPOSE,output data set from a procedure?
Briefly explain input and put function?
How do I CREATE an external dataset with sas code? I would like to create within a sascode a non-exsistent textfile on the host. So I am not forced to create the file befor filling it.
In proc transpose and data step with arrays which one you pick?
1 Answers Accenture, Quintiles,
what are the different ways of merging two datasets.name atleast 4.
There is a field containing a date. It needs to be displayed in the format "ddmonyy" if it's before 1975, "dd mon ccyy" if it's after 1985, and as 'Disco Years' if it's between 1975 and 1985. How would you accomplish this in data step code? Using only PROC FORMAT
what is the difference between unique key and primary key? : Sas-di
how can you sort the dataset having millions of OBS(instead of sort procedure?
Intern stastical programmer written test
What is the purpose of the trailing @? The @@? How would you use them?
What SAS statements would you code to read an external raw data file to a DATA step?