如何创建或更新列

how to create or update a column

我有一个数据框 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)

你可以试试groupby and cumsum:

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