快速创建汇总数据框

我有一个数据框,我想将其总结为一个新的数据框:原始数据框有一个人、一个日期和三个虚拟类别——足球、网球和排球,表明一个人在该日期参加了该运动(灰色表格)

我想制作一个“摘要 df”,显示该人每季度参加每项运动的次数(蓝色表格)。当数据框由 100 多个不同的人和几十万个日期组成时,有什么方法可以真正有效地做到这一点?我有点不知所措,感谢任何答案!

http://img2.mukewang.com/634e7115000172cb06540516.jpg

慕莱坞森
浏览 138回答 1
1回答

凤凰求蛊

一个想法是先将日期时间转换为季度和年份,Series.dt.quarter然后Series.dt.year再聚合sum:dates = pd.to_datetime(df['Date'], format='%d.%m.%Y')df1 = (df.groupby(['Person',                     dates.dt.quarter.rename('Quarter'),                     dates.dt.year.rename('Year')], sort=False)          .sum()          .reset_index())
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python