根据 df python 中的两个列值累积数据

Cumulate data based on two column values in df python

我正在尝试根据 ID 和月份累计数据使用情况,以便将累计数据添加为附加列。

这是我的 df 示例代码:

df = pd.DataFrame({'ID':["SAD1", "SAD2", "SAD1", "SAD2", "SAD1", "SAD2", "SAD3"], 
               'Month':["201701","201701","201702","201702","201703","201703", "201703"], 
               'Usage':[20,40,100,50, 30, 30, 2000]})

我的数据框如下所示:

     ID   Month  Usage
0  SAD1  201701     20
1  SAD2  201701     40
2  SAD1  201702    100
3  SAD2  201702     50
4  SAD1  201703     30
5  SAD2  201703     30
6  SAD3  201703   2000

我想得到的结果是:

     ID   Month  Usage  Cum Usage
0  SAD1  201701     20         20
1  SAD2  201701     40         40
2  SAD1  201702    100        120
3  SAD2  201702     50         90
4  SAD1  201703     30        150
5  SAD2  201703     30        120 
6  SAD3  201703   2000       2000

任何人都可以帮助我如何将其应用到我的 df 中吗?

groupbycumsum

df['Cum Usage'] = df.groupby('ID').cumsum()