我试图从列中提取年份、月份、日期、日期、时间和分钟。
我有以下DataFrame:
2021-01-01 00:15:00
2021-01-02 00:30:00
2021-02-05 02:15:00
2021-02-20 00:15:00
2021-04-25 22:15:00
2021-12-30 00:10:00
我正在努力:
df['date'] = pd.to_datetime(df['date'])
df['year'], df['month'], df['day'], df['minute'], df['hour'],df['weekday']=df['date'].dt.year, df['date'].dt.month, df['date'].dt.day, df['date'].dt.minute, df['date'].dt.hour, df['date'].dt.isoweekday
df
它对所有其他属性都很好,但是dt.isoweekday
抛出了错误。
AttributeError:“DatetimeProperties”对象没有属性“isoweekday”
如果我用dt.weekday
替换它,它可以正常工作,但是我需要monday=1。我也尝试过dt.Timestamp.isoweekday
,请谁来指导一下为什么isoweekday函数不能工作?
我用的是熊猫1.3.4
发布于 2022-05-20 08:25:08
要获得周一天(1为星期一),您需要使用df['date'].dt.isocalendar().day
0 5
1 6
2 5
3 6
4 7
5 4
Name: day, dtype: UInt32
类似地,df['date'].dt.isocalendar().week
会给出ISO周号。
请注意,通过df['date'].dt.isocalendar()
,您可以直接获得年份/周/日:
year week day
0 2020 53 5
1 2020 53 6
2 2021 5 5
3 2021 7 6
4 2021 16 7
5 2021 52 4
https://stackoverflow.com/questions/72315731
复制相似问题