📅  最后修改于: 2023-12-03 15:19:16.318000             🧑  作者: Mango
CustomBusinessDay.kwds
是 Pandas 库中用于自定义工作日偏移的类。它允许程序员根据自己的需求创建自定义的工作日规则,从而灵活地进行日期和时间的计算。
CustomBusinessDay.kwds
类的主要参数如下:
weekmask
:一个包含7个元素的布尔值列表,表示每个工作日的开关状态,数据类型为数组。布尔值为True表示该工作日有效,False表示该工作日无效。默认值为[True, True, True, True, True, True, False],表示周一到周五为有效工作日,周六和周日为无效工作日。
holidays
:一个日期列表或具有日期时间值的 Pandas Series 或 DataFrame 对象,用于指定无效的日期。默认值为 None。
calendar
:一个 np.busdaycalendar
对象,用于将日期转换为工作日,以及规定工作日间隔等规则。
下面是一个使用 CustomBusinessDay.kwds
类创建自定义工作日规则的示例代码:
import pandas as pd
from pandas.tseries.offsets import CustomBusinessDay
# 创建自定义工作日规则
custom_bday = CustomBusinessDay(weekmask='Mon Tue Wed Thu Fri', holidays=['2022-01-01', '2022-12-25'])
# 指定日期
start_date = pd.to_datetime('2022-01-01')
end_date = pd.to_datetime('2022-12-31')
# 生成日期范围
date_range = pd.date_range(start=start_date, end=end_date, freq=custom_bday)
# 打印日期范围
print(date_range)
上述代码创建了一个自定义工作日规则,指定了周一到周五为有效工作日,同时指定了2022年的元旦和圣诞节为无效日期。然后使用该工作日规则生成了2022年的有效工作日日期范围,并打印了结果。
以下是上述示例代码的输出结果:
DatetimeIndex(['2022-01-03', '2022-01-04', '2022-01-05', '2022-01-06',
'2022-01-07', '2022-01-10', '2022-01-11', '2022-01-12',
'2022-01-13', '2022-01-14',
...
'2022-12-13', '2022-12-14', '2022-12-15', '2022-12-16',
'2022-12-19', '2022-12-20', '2022-12-21', '2022-12-22',
'2022-12-23', '2022-12-26'],
dtype='datetime64[ns]', length=261, freq='C')
输出结果为一个包含261个日期的 Pandas DatetimeIndex 对象,每个日期都是2022年的工作日。