如何使用按日期和类别分组,以及按年份和类别(有3个)的销售额以及每年谁的销售额是合计的。
我试过使用groupby,但没有解决
这是输入:
date category sales
------------------------------------
0 20/2/2014 weekdays 120.96
1 05/03/2015 weekend 120.96
2 19/05/2014 weekdays 75.99
3 09/02/2014 weekend 60.76
4 15/03/2015 weekdays 49.01
5 03/03/2014 weekend 50.3
6 09/05/2014 weekend 203.2
df2 = df.groupby(['date','category'], as_index=False)['sales'].sum()
print (df2)
使用此功能后,代码将引发错误。
输出应如下所示:
date category sales
-------------------------
2014 weekdays 196.95
2014 weekend 314.26
2015 weekdays 49.01
2015 weekend 120.96
最佳答案
在series.dt.year
下使用df.groupby()
:
#df['date'] = pd.to_datetime(df['date']) : if date is object dtype
df.groupby([df.date.dt.year,'category'])['sales'].sum().reset_index()
date category sales
0 2014 weekdays 196.95
1 2014 weekend 314.26
2 2015 weekdays 49.01
3 2015 weekend 120.96
关于python - 如何在 Pandas 中对日期和其他列进行分组,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/56296080/