我有以下数据集,想按名称和月份和年份分组。我想计算这个名字在一年中的每个月出现的次数:
Date Name
2019-11-10 18:59:31+00:00 A
2020-11-07 18:59:31+00:00 A
2021-05-10 18:59:31+00:00 B
2020-11-09 18:59:31+00:00 C
2021-05-01 18:59:31+00:00 B
2020-12-10 18:59:31+00:00 C
2019-12-10 18:59:31+00:00 B
我不知道结果究竟如何,但我希望得到与此类似的结果,因此我可以制作一个图表:
2019-11 A 1
2020-11 A 1
2021-05 B 2
2020-11 C 1
2020-12 C 1
2019-12 B 1
我尝试了以下方法:
df.groupby(pd.Grouper(key='Date',freq='1M')).groupby('Name').count()
类型错误:仅对 DatetimeIndex、TimedeltaIndex 或 PeriodIndex 有效,但获得了“Index”的实例
尝试:
df.groupby([df['Date'].dt.strftime('%Y-%m'),'Name'])['Name'].count().rename('count').reset_index()
输出:
Date Name count
0 2019-11 A 1
1 2019-12 B 1
2 2020-11 A 1
3 2020-11 C 1
4 2020-12 C 1
5 2021-05 B 2
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句