首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >dt.weekday工作,但dt.isoweekday不工作

dt.weekday工作,但dt.isoweekday不工作
EN

Stack Overflow用户
提问于 2022-05-20 08:22:57
回答 1查看 197关注 0票数 2

我试图从列中提取年份、月份、日期、日期、时间和分钟。

我有以下DataFrame:

代码语言:javascript
运行
复制
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

我正在努力:

代码语言:javascript
运行
复制
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

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2022-05-20 08:25:08

要获得周一天(1为星期一),您需要使用df['date'].dt.isocalendar().day

代码语言:javascript
运行
复制
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(),您可以直接获得年份/周/日:

代码语言:javascript
运行
复制
   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
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/72315731

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档