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]')