问题描述
我正在尝试使用以下代码将日期时间类型列转换为星期几:
date = {'Date': ['2018-10-30','2018-10-30','2018-10-30']}
df = pd.DataFrame(date)
df.Date = df.to_datetime(df.Date)
df.Date.dayofweek()
但是它运行此错误:AttributeError:'Series'对象没有属性'dayofweek'。 为什么要调用Series对象(如果它是日期时间)?
当我像这样对列进行切片时:
[In] df.Date[0].dayofweek()
[Out] 1
我得到了预期的结果。 有人知道发生了什么吗?
解决方法
删除()
是因为Series.dt.dayofweek
使用Series
(column
):
print (df.Date.dt.dayofweek)
0 1
1 1
2 1
3 1
4 1
Name: Date,dtype: int64
不确定您的熊猫版本,但是对我来说,Timestamp.dayofweek
也没有()
:
print (df.Date.iat[0].dayofweek)
1