在Python中的Dataframe中添加假日列

时间:2016-06-07 10:41:05

标签: python calendar

我正在尝试使用workalendar包在Dataframe中为France添加假期列,但它给了我一个错误

  

系列'对象没有属性'工作日'

以下是我的代码;

from workalendar.europe import France
df1 = pd.read_csv('C:\Users\ABC.csv')
df1['Date'] = pd.to_datetime(df1['Date'], format= '%d/%m/%Y %H:%M:%S')
df1['Date1'] = df1.Date.dt.date
dr = df1['Date1']
cal = France()
df1['Holiday'] = cal.is_working_day(df1['Date1'])
df1.head()

文件中的原始数据如下所示;

Date                Value
17/10/2012 19:00:00 0
17/10/2012 20:00:00 0.1
17/10/2012 21:00:00 0
17/10/2012 22:00:00 0
17/10/2012 23:00:00 0
18/10/2012 00:00:00 0
18/10/2012 01:00:00 0
18/10/2012 02:00:00 0
18/10/2012 03:00:00 0.1
18/10/2012 04:00:00 0
18/10/2012 05:00:00 0
18/10/2012 06:00:00 0
18/10/2012 07:00:00 0
18/10/2012 08:00:00 0.2
18/10/2012 09:00:00 0.5

`

1 个答案:

答案 0 :(得分:0)

试试这个。

df1['Holiday'] = df1.Date.apply(lambda x: cal.is_working_day(pd.to_pydatetime(x)))

您必须将对象类型转换为datetime

顺便说一句,我认为working_day可能不是Holiday ...

Converting between datetime, Timestamp and datetime64