Python-熊猫-展开/删除累计金额

Aff*_*tus 2 python dataframe python-2.7 pandas

我有一个类似以下的数据框(下面是特定数据,这是通用的)。否给我累加的总和:

                 no
name day           
Jack Monday      10
     Tuesday     40
     Wednesday   90
Jill Monday      40
     Wednesday  150
Run Code Online (Sandbox Code Playgroud)

我想“展开”累计金额,以便给我这样的东西:

print df
   name        day   no
0  Jack     Monday   10
1  Jack    Tuesday   30
2  Jack  Wednesday   50
3  Jill     Monday   40
4  Jill  Wednesday  110
Run Code Online (Sandbox Code Playgroud)

本质上,我想执行以下操作,但相反: 熊猫groupby累积和

EdC*_*ica 5

IIUC您可以执行以下操作:

In [103]:
df.groupby(level=0).diff().fillna(df).reset_index()

Out[103]:
   name        day     no
0  Jack     Monday   10.0
1  Jack    Tuesday   30.0
2  Jack  Wednesday   50.0
3  Jill     Monday   40.0
4  Jill  Wednesday  110.0
Run Code Online (Sandbox Code Playgroud)

因此groupby,第一个索引级别和调用diff以计算每组的行间差异,并NaN用原始df值填充这些值并调用reset_index