numpy.busdaycalendar#
- class numpy.busdaycalendar(weekmask='1111100', holidays=None)[源代码]#
一个工作日日历对象,可以高效地存储定义 busday 系列函数有效日期的信息。
默认的有效日期是周一到周五(“工作日”)。busdaycalendar 对象可以指定任何一周的有效日期集合,外加一个可选的“节假日”日期,这些日期永远是无效的。
一旦创建了 busdaycalendar 对象,weekmask 和 holidays 就不能被修改。
- 参数:
- weekmaskstr or array_like of bool, optional
一个七元素数组,指示星期一到星期日中的哪些是有效日期。可以指定为长度为七的列表或数组,例如 [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], optional
一个日期数组,用于将它们视为无效日期,无论它们落在哪个星期几。假日日期可以按任意顺序指定,NaT(非时间)日期将被忽略。此列表以一种适合快速计算有效日期的标准化形式保存。
- 返回:
- 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]')