在一行中查找连续的值对,然后在python中对它们进行操作

时间:2016-10-12 11:34:17

标签: python pandas

我在python中有一个数据框,如:

item  Value

abc   3
xyz   5
pqr   7
abc   3
pqr   7
abc   5
xyz   5

现在我想添加任意值的第一个匹配项以及该项目的值的第二次出现, 所以输出应该是这样的: -

item  Value

abc   6
abc   8
xyz   10
pqr   14

1 个答案:

答案 0 :(得分:0)

对于大熊猫而言,这更像是一个逻辑问题,但是自从你在熊猫中问过,有一个快速的方法可以做到这一点:

df['value_to_add'] = df.sort_values('item').groupby('item').shift(-1)
df.dropna(inplace=True) 
df['value'] = df.value + df.value_to_add
df.drop('value_to_add', inplace=True, axis=1)