numpy.busday_count#

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

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

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

参数:
begindatesdatetime64[D]的array_like

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

enddatesdatetime64[D]的array_like

用于计数的结束日期的数组,这些日期本身将从计数中排除.

weekmaskstr或bool的array_like,可选

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

holidaysdatetime64[D]的array_like,可选

要视为无效日期的一个日期数组.它们可以按任何顺序指定,并且忽略NaT(非时间)日期.此列表以标准化形式保存,适用于快速计算有效日期.

busdaycalbusdaycalendar,可选

指定有效日的 busdaycalendar 对象.如果提供了此参数,则不得提供 weekmask 或 holidays.

out整数数组,可选

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

返回:
out整数数组

一个数组,其形状来自广播 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