首页 > 解决方案 > 如何在 python 数据框中做季度?

问题描述

我有一个数据框 df1:

     Date     Number
0 Jan-2017       20
1 Sep-2021       30
2 Jul-2021       40
3 Mar-2017       50
4 Apr-2020       60
5 Jun-2020       70
6 Feb-2017       80

“日期”列的数据类型为“对象”

我需要将“日期”按季度分组

1st quater -->(Jan,Feb,Mar)
2nd quater -->(Apr,May,Jun)
3rd quater -->(Jul,Aug,Sep)
4th quater -->(Oct,Nov,Dec)

对“数字”列求和

预期输出如下:

     Date     Number
0 Q1-2017       150
1 Q3-2021        70
2 Q2-2020       130

感谢您的时间 :)

标签: pythonpandasdataframe

解决方案


你也可以试试这个:

df.groupby(pd.to_datetime(df['Date'], format='%b-%Y').dt.to_period('Q'))['Number'].sum()

输出:

Date
2017Q1    150
2020Q2    130
2021Q3     70
Freq: Q-DEC, Name: Number, dtype: int64

推荐阅读