你能从 Pandas 的日期中提取年份和月份吗

Das*_*rau 4 python plot dataframe pandas

我有一个带有日期列(日期时间类型)的数据框。我可以轻松地提取年份或月份来执行分组,但我找不到从日期中同时提取年份和月份的方法。我需要分析产品在 1 年期间的表现,并制作一个图表,说明它每个月的表现。当然,我不能只按月分组,因为它会为 2 个不同的年份添加相同的月份,而按年份分组不会产生我想要的结果,因为我需要每月查看性能。

我一直在寻找几种解决方案,但到目前为止都没有奏效。

所以基本上,我现在的日期是这样的

2018-07-20
2018-08-20
2018-08-21
2018-10-11
2019-07-20
2019-08-21
Run Code Online (Sandbox Code Playgroud)

我只想拥有2018-07, 2018-08, 2018-10,等等。

小智 10

您可以使用 to_period

df['month_year'] = df['date'].dt.to_period('M')
Run Code Online (Sandbox Code Playgroud)


JDe*_*an6 6

如果它们存储为日期时间,您应该能够使用 datetime.strftime ( https://strftime.org/ ) 创建一个仅包含年份和月份的字符串进行分组。

它看起来像:

df['ym-date'] = df['date'].dt.strftime('%Y-%m')
Run Code Online (Sandbox Code Playgroud)