numpy.busday_count#

numpy.busday_count(begindates, enddates, weekmask='1111100', holidays=[], busdaycal=None, out=None)#

计算 begindatesenddates 之间有效天数的数量,不包括 enddates 的那一天。

如果 enddates 指定的日期值早于相应的 begindates 日期值,则计数将为负数。

版本 1.7.0 中的新功能。

参数:
begindatesdatetime64[D] 类型的数组类

用于计数的第一个日期数组。

enddatesdatetime64[D] 类型的数组类

用于计数的结束日期数组,这些日期本身不包含在计数中。

weekmaskstr 或布尔类型的数组类,可选

一个七元素数组,指示周一到周日哪些是有效日期。可以指定为长度为七的列表或数组,例如 [1,1,1,1,1,0,0];长度为七的字符串,例如 '1111100';或一个像“Mon Tue Wed Thu Fri”这样的字符串,由工作日的三个字符缩写组成,可选地用空格分隔。有效的缩写为:Mon Tue Wed Thu Fri Sat Sun

holidaysdatetime64[D] 类型的数组类,可选

要视为无效日期的日期数组。它们可以以任何顺序指定,并且 NaT(非时间)日期将被忽略。此列表以适合快速计算有效日期的规范化形式保存。

busdaycalbusdaycalendar,可选

一个 busdaycalendar 对象,用于指定有效日期。如果提供了此参数,则不得提供 weekmask 或 holidays。

outint 类型的数组,可选

如果提供,则此数组将填充结果。

返回值:
outint 类型的数组

一个数组,其形状来自将 begindatesenddates 广播到一起,包含开始日期和结束日期之间有效天数的数量。

另请参阅

busdaycalendar

指定一组自定义有效日期的对象。

is_busday

返回一个布尔数组,指示有效日期。

busday_offset

应用以有效日期计算的偏移量。

示例

>>> import numpy as np
>>> # Number of weekdays in January 2011
... np.busday_count('2011-01', '2011-02')
21
>>> # Number of weekdays in 2011
>>> np.busday_count('2011', '2012')
260
>>> # Number of Saturdays in 2011
... np.busday_count('2011', '2012', weekmask='Sat')
53