Date 考虑到周六是工作日,我如何计算两个日期之间的工作日数?
我有一个包含事件第一天和最后一天的数据集。我需要计算两个日期之间的工作日数。不过,我需要考虑星期六作为一个工作日。我该怎么做 这是一个与我的数据集完全相同的示例,但更小。在运行所有程序之前,我一直在使用它来测试代码:Date 考虑到周六是工作日,我如何计算两个日期之间的工作日数?,date,sas,date-difference,Date,Sas,Date Difference,我有一个包含事件第一天和最后一天的数据集。我需要计算两个日期之间的工作日数。不过,我需要考虑星期六作为一个工作日。我该怎么做 这是一个与我的数据集完全相同的示例,但更小。在运行所有程序之前,我一直在使用它来测试代码: data testing_weekdays; input id $ date_1 date9. id2 $ dat2_2 date9.; format date_1 date9. dat2_2 date9.; datalines; AA 01jan2019
data testing_weekdays;
input id $ date_1 date9. id2 $ dat2_2 date9.;
format date_1 date9. dat2_2 date9.;
datalines;
AA 01jan2019 AA 25jan2019
BB 02feb2019 BB 12feb2019
CC 10aug1990 CC 05jan1995
DD 11dec1999 DD 21dec1999
;
run;
当我将intck函数与参数“weekday”一起使用时,我得到了周六和周日都是周末的差异。但我想只考虑星期日。
我在SAS社区上看到了此解决方案,但我无法使其正常工作。您可以使用SAS函数intck查找所需的间隔。在您的示例中,以下是语句:
data want;
set testing_weekdays;
wkdays=intck('WEEKDAY1W',date_1,dat2_2);
run;
您可以对工作日间隔使用不同的格式。这些日子被编号为星期日(1)。。星期六(7)。因此,如果您想将星期日作为周末,那么将WEEKDAY1W用作间隔。。假设你想把星期一(2)和星期三(4)作为周末,那么使用-WEEKDAY24W你是在问如何计算两次约会之间有多少个星期天?
data new;
set old
interval=intck('weekday1w',begin,end);
run;