gpt4 book ai didi

python - 比较 Pandas 中两个数据框的行

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

我有两个数据框,第一个是我目前在数据库中的数据,第二个是一个可能更改了字段的文件: name和/或 cnpj和/或 create_date

基于此,我需要创建第三个数据框,其中仅包含经过某种更改的行,如预期输出示例中所示。

进行比较的关键是: id_account

数据框 1:

<表类="s-表"><头>id_account名字cnpj创建日期<正文>10机构交叉102030402022-05-3020代理天使112131412022-05-3030马里奥兄弟超市122232422022-05-3040机关先生M132333432022-05-3050超市口袋妖怪142434542022-05-3060梦想超市152535802022-05-30

数据框 2:

<表类="s-表"><头>id_account名字cnpj创建日期<正文>10超市卡罗尔805020302022-05-3020代理天使112131412022-05-3030马里奥兄弟超市122232422022-05-3040超市魔法603040502022-05-3050超市口袋妖怪142434542022-05-3060梦想超市908040502022-05-30

预期输出:

<表类="s-表"><头>id_account名字cnpj创建日期<正文>10超市卡罗尔805020302022-05-3040超市魔法603040502022-05-3060梦想超市908040502022-05-30

我该怎么做?我已经寻找了几种方法,但我对索引感到困惑。

最佳答案

如果数据具有相同的列,但行数不同,这是一种可能的解决方案:

res = (pd.concat([df1,df2])
.drop_duplicates(keep=False)
.drop_duplicates(subset='id_account', keep='last')
)

输出:

   id_account                   name      cnpj create_date
0 10 Supermarket Carol 80502030 2022-05-30
3 40 Supermarket Magical 60304050 2022-05-30
5 60 Supermarket of Dreams 90804050 2022-05-30

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

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