2016-02-29 35 views
2

我有一個數據幀x如何創建或更新列

item S sale 
A1  1 5 
A1  2 10 
A2  1 3 
A2  2 7 
A2  3 8 

,我想正是這種格式

item S sale cumsum 
A1  1 5  5 
A1  2 10 15 
A2  1 3  3 
A2  2 7  10 
A2  3 8  18 

我創建了一個字典,項目和關鍵值的結果並使用for循環

x_dict=df.groupby(['item']).apply(lambda g: g.S.values).to_dict() 

for i , j in x_dict.iteritems(): 

但我無法訪問值其給出的錯誤:

(Unexpected EOF file)

回答

1

你可以嘗試groupbycumsum

df['cumsum'] = df.groupby('item')['sale'].cumsum() 
print df 
    item S sale cumsum 
0 A1 1  5  5 
1 A1 2 10  15 
2 A2 1  3  3 
3 A2 2  7  10 
4 A2 3  8  18