numpy.busday_count#

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

计算 begindatesenddates 之间的有效天数,不包括 enddates 当天.

如果 enddates 指定了一个早于相应 begindates 日期值的日期值,计数将为负数.

在 1.7.0 版本加入.

参数:
begindates类似数组的 datetime64[D]

用于计数的首批日期数组.

enddates类似数组的 datetime64[D]

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

weekmaskstr 或 bool 类型的类数组对象,可选

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

holidays类似数组的 datetime64[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