我正在创建一个带有累积总和的未分明表。
数据如下:
Year Period Amount
2011 1 10
2011 2 15
2011 3 8
2012 1 20
2012 3 10
2012 4 5
我想添加一个累积总和:
Year Period Cumulative Amount
2011 1 10
2011 2 25
2011 3 33
2012 1 20
2012 3 30
2012 4 35
我为此累积总和写了代码,但我的问题是,在2012年期间2的实例中,这不是记录,因此不会出现。
在没有记录并具有金额= 0的情况下,添加行的最简单方法是什么?
2011年需要2019年至2011年 1 = 9个时期
对于2012年,需要2019年至2012年 1 = 8个时期
… 等等。
要获得累积总和,我做了以下内容:
py_data = df['Amount'].groupby([df['Year'], df['Period']).sum().reset_index()
py_data['cumsum'] = py_data["'Amount'"].groupby([py_data['Period']]).cumsum()
做:
df['Cumulative_Amount'] = df.groupby('Year')['Amount'].cumsum()
输出:
Year Amount Period Cumulative_Amount
0 2011 10 1 10
1 2011 15 2 25
2 2011 8 3 33
3 2012 20 1 20
4 2012 10 3 30
5 2012 5 4 35