【发布时间】:2021-02-03 12:57:32
【问题描述】:
给定如下所示的 pandas 数据框,我想对“用户”进行某种分组,但在时间列上使用特殊定义的子标准对金额列求和。
amount time users
0 11 0 A
1 23 10 A
2 12 20 A
3 34 30 A
4 56 40 B
5 77 50 B
6 89 60 C
为此,我有成对的 range_start 和 range_end,例如在元组列表或类似列表中。这些时间列的 sub_group_ranges 应该使我能够在数据框中的每个批次上应用 groupby().sum。
sub_group_ranges = [(0,0),(20,30),(40,50),(60,60)]
结果应如下所示。每个用户的间隔计数是任意的。
sum_amount_on_timerange user
0 57 A
1 133 B
2 89 C
我发现这个post 很相似,但如果我没有连续的间隔意味着第一个间隔的结束不是下一个间隔的开始,我不明白如何使用它。
如果有人知道要寻找什么,那就太好了。 非常感谢
【问题讨论】:
标签: python pandas group-by aggregate-functions