尝试这个:
data2 = data1.reset_index()data3 = data2.set_index(["Bool", "Dir", "index"]) # index is the new column created by reset_indexrunning_sum = data3.groupby(level=[0,1,2]).sum().groupby(level=[0,1]).cumsum()
您不能简单地使用
cumsumon的原因
data3与数据的结构有关。通过分组
Bool和
Dir
和应用聚合函数(
sum,
mean,等),比一开始,因为任何功能,您使用基于您的按键组将汇总值会产生更小尺寸的数据帧。但是,
cumsum它不是一个整合功能。它会返回一个与被调用的相同大小的Dataframe。因此,除非您输入的Dataframe格式为调用后输出可以具有相同大小的格式
cumsum,否则它将引发错误。这就是为什么我
sum首先调用它的原因,它以正确的输入格式返回Dataframe。
对不起,如果我还没有解释清楚。也许有人可以帮助我吗?



