numpy.busdaycalendar#

class numpy.busdaycalendar(weekmask='1111100', holidays=None)[source]#

一个工作日历对象,高效地存储定义 `busday` 系列函数有效日期的信息。

默认的有效日期是周一到周五(“工作日”)。`busdaycalendar` 对象可以指定任意一周中的有效日期集合,以及一个可选的始终无效的“节假日”日期。

一旦创建 `busdaycalendar` 对象,`weekmask` 和 `holidays` 就不能被修改。

参数:
weekmaskstr 或 array_like of bool, 可选

一个七元素数组,指示周一至周日中哪些是有效日期。可以指定为长度为七的列表或数组,例如 `[1,1,1,1,1,0,0]`;长度为七的字符串,例如 `'1111100'`;或者类似 “Mon Tue Wed Thu Fri” 的字符串,由三个字符的星期几缩写组成,可选地用空格分隔。有效缩写包括:Mon Tue Wed Thu Fri Sat Sun

holidaysarray_like of datetime64[D], 可选

一个日期数组,这些日期将被视为无效日期,无论它们是星期几。节假日日期可以以任何顺序指定,并且 NaT (not-a-time) 日期会被忽略。此列表以标准化形式保存,适用于快速计算有效日期。

返回:
outbusdaycalendar

一个工作日历对象,包含指定的 `weekmask` 和 `holidays` 值。

另请参阅

is_busday

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

busday_offset

应用按有效日期计数的偏移量。

busday_count

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

备注

一旦创建 `busdaycalendar` 对象,您不能修改 `weekmask` 或 `holidays`。这些属性返回内部数据的副本。

示例

>>> import numpy as np
>>> # Some important days in July
... bdd = np.busdaycalendar(
...             holidays=['2011-07-01', '2011-07-04', '2011-07-17'])
>>> # Default is Monday to Friday weekdays
... bdd.weekmask
array([ True,  True,  True,  True,  True, False, False])
>>> # Any holidays already on the weekend are removed
... bdd.holidays
array(['2011-07-01', '2011-07-04'], dtype='datetime64[D]')
属性:
weekmask(副本) 七元素布尔数组

七元素布尔掩码的副本,指示有效日期。

holidays(副本) 排序的 datetime64[D] 数组

节假日数组的副本,指示额外的无效日期。