numpy.is_busday#

numpy.is_busday(dates, weekmask='1111100', holidays=None, busdaycal=None, out=None)#

计算给定日期中哪些是有效工作日,哪些不是。

版本 1.7.0 中新增。

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

要处理的日期数组。

weekmask字符串或布尔值类型的数组类,可选

一个七元素数组,指示周一到周日中哪些是有效工作日。可以指定为一个长度为七的列表或数组,例如 [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。

out布尔值数组,可选

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

返回值:
out布尔值数组

一个与 dates 形状相同的数组,包含每个有效日期的 True 和每个无效日期的 False。

参见

busdaycalendar

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

busday_offset

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

busday_count

计算半开日期范围内有多少个有效日期。

示例

>>> import numpy as np
>>> # The weekdays are Friday, Saturday, and Monday
... np.is_busday(['2011-07-01', '2011-07-02', '2011-07-18'],
...                 holidays=['2011-07-01', '2011-07-04', '2011-07-17'])
array([False, False,  True])