gpt4 book ai didi

python - 如果一个数据帧的内容存在于使用 pandas 的另一个数据帧中,则减去/添加现有值

转载 作者:行者123 更新时间:2023-12-01 00:02:55 24 4
gpt4 key购买 nike

这里有 2 个数据框

df1:

Index Number Name  Amount
0 123 John 31
1 124 Alle 33
2 312 Amy 33
3 314 Holly 35

df2:

Index Number Name  Amount
0 312 Amy 13
1 124 Alle 35
2 317 Jack 53

生成的数据框应如下所示

结果_df:

Index Number Name  Amount  Curr_amount
0 123 John 31 31
1 124 Alle 33 68
2 312 Amy 33 46
3 314 Holly 35 35
4 317 Jack 53

我尝试使用 pandas isin 但它只说明 bool 值中 Number 列是否存在。有什么办法可以有效地做到这一点吗?

最佳答案

使用merge使用外连接,然后添加 Series.add (或者 Series.sub如果需要):

df = df1.merge(df2, on=['Number','Name'], how='outer', suffixes=('','_curr'))
df['Amount_curr'] = df['Amount_curr'].add(df['Amount'], fill_value=0)
print (df)
Number Name Amount Amount_curr
0 123 John 31.0 31.0
1 124 Alle 33.0 68.0
2 312 Amy 33.0 46.0
3 314 Holly 35.0 35.0
4 317 Jack NaN 53.0

关于python - 如果一个数据帧的内容存在于使用 pandas 的另一个数据帧中,则减去/添加现有值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60204940/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com