我有以下形式的数据帧:
|----------|----|------|
|date |type|inflow|
|----------|----|------|
|2017-01-01|I | 3500|
|2017-02-01|A | 23|
|2017-07-01|A | 44|
|2017-09-01|A | 55|
|2017-12-01|A | 12|
|2018-01-01|I | 3800|
|2018-03-01|A | 87|
|2018-05-01|A | 34|
|2018-07-01|A | 23|
|----------|----|------|
I是初始流入量,以及额外流入量。它们不一定按年份分组,日期可以是任意的。我希望在每一行中都有一个累积和,从我上次遇到一个I开始。因此,当我遇到另一个I时,累积和应该重置。如果有帮助,两个I之间的As的最大数量可以是5
我尝试使用apply和rollappy,但无法找出如何在不一致的滚动窗口上应用它们。 我如何使用熊猫来实现这一点
让我们试试^{} :
详细信息
df['type'].eq('I').cumsum()
用于标记流入组,以执行分组累计和请参见下面的可视化:
您会注意到,1s和2s列将唯一标识要执行累计和的组
相关问题 更多 >
编程相关推荐