由于自己临时需要加入一列属性作为数据分析,需要判断一个日期是否是工作日或者节假日
找到一个现成的插件,蛮好用的
https://pypi.org/project/chinesecalendar/
上面有专门的例子,我试了一下:
import datetime
# 判断 2019年9月13号 是不是节假日(中秋节)
from chinese_calendar import is_workday, is_holiday
april_last = datetime.date(2019, 8, 21)
is_workday(april_last)
建立一个专门的列:
##利用插件判断是否工作日
df['is_holiday'] = df['统计日期'].apply(lambda x:is_workday(x))
#onehot
import copy
categoricals = ['is_holiday']
for feature in categoricals:
df1 = copy.copy(pd.get_dummies(df[feature], drop_first=True))
df= pd.concat([df, df1], axis=1)
df.drop(columns=feature, inplace=True)
Worldwide holidays and working days helper and toolkit.
https://pypi.org/project/workalendar/