首页 > 解决方案 > 将日期时间列转换为星期几

问题描述

我正在尝试使用以下代码将日期时间类型列转换为星期几:

date = {'Date': ['2018-10-30', '2018-10-30', '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'。如果是 datetime ,为什么要调用 Series 对象?

当我像这样切片列时:

[In] df.Date[0].dayofweek()
[Out] 1 

我得到了预期的结果。有谁知道发生了什么?

标签: pythonpandasdatetimedayofweek

解决方案


删除()因为使用Series( column) by Series.dt.dayofweek

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

推荐阅读