我有一个数据框,我想将其总结为一个新的数据框:原始数据框有一个人、一个日期和三个虚拟类别——足球、网球和排球,表明一个人在该日期参加了该运动(灰色表格)我想制作一个“摘要 df”,显示该人每季度参加每项运动的次数(蓝色表格)。当数据框由 100 多个不同的人和几十万个日期组成时,有什么方法可以真正有效地做到这一点?我有点不知所措,感谢任何答案!
1 回答

凤凰求蛊
TA贡献1825条经验 获得超4个赞
一个想法是先将日期时间转换为季度和年份,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())
添加回答
举报
0/150
提交
取消