gpt4 book ai didi

python - Pandas:两个数据框的组合

转载 作者:行者123 更新时间:2023-12-01 04:02:10 25 4
gpt4 key购买 nike

我有两个数据框,。两者都有相同的列。

我想,通过索引,

  • old 中添加存在于 new 中但不存在于 old 中的行
  • 使用中的数据更新中的行。

pandas中有没有有效的方法来做到这一点?我发现update() ,这正是第二步。但是,它不会添加行。我可以在索引上使用一些设置逻辑来完成第一步。然而,这似乎效率不高。执行这两个操作的最佳方法是什么?

示例

    a   b
0 1 1
1 3 3

    a   b
1 1 2
2 1 2

结果

    a   b
0 1 1
1 1 2
2 1 2

最佳答案

您可以首先找到两个数据帧的公共(public)索引,然后为第一个数据帧分配第二个数据帧的值。然后你会得到结果 combine_first :

In [35]: df1
Out[35]:
a b
0 1 1
1 3 3

In [36]: df2
Out[36]:
a b
1 1 2
2 1 2

idx = df1.index & df2.index
df1.loc[idx, :] = df2.loc[idx, :]
df1 = df1.combine_first(df2)

In [39]: df1
Out[39]:
a b
0 1 1
1 1 2
2 1 2

关于python - Pandas:两个数据框的组合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36309446/

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