这里的成员的总和是输入数据框:运行最新最每组
id val
0 A 1
1 B 2
2 A -3
3 C 1
4 D 5
5 B 6
6 C -2
我想通过ID组条目,然后计算各组看到了最新的成员运行总和到这一点。下面是所期望的输出将如何看等,与解释它是如何获得:
id val out
0 A 1 1
1 B 2 3 (2 + 1)
2 A -3 -1 (-3 + 2)
3 C 1 0 (1+ -3 +2)
4 D 5 5 (5 + 1 + -3 + 2_
5 B 6 9 (6 + 5 + 1 + -3)
6 C -2 6 (-2 + 6 + 5 -3)
下面是一些更详细的解释: 1)使用id = 1具有3 = 2 + 1,因为在该行时间你有2个组,As和Bs,每个都有1行,所以你必须从每个组中取一行。
2)id = 2的行有-1 = -3 + 2,因为那时你有2个组,As和Bs。来自As的最近一行是2 A -3
,而来自Bs的单个(因此是最新的)行是1 B 2
,因此您需要添加这两行。
3)在使用id = 6行,你把
2 A -3
4 D 5
5 B 6
6 C -2
您从每组取1行,这是最近在该点的行。
为什么第二个值是'3'?当第一个ID是'A'并且第二个ID是'B'时。 –
那么,在这一点上,你有2个组,A和B,每个组都有一行。我们的目标是从每个组中获取最近的一行,并且您有2个组,每个组有1行,因此您为它们添加val值并获得2 + 1。 –