gpt4 book ai didi

python - 比较两个 Python Pandas 数据帧的 2 列并获取公共(public)行

转载 作者:太空狗 更新时间:2023-10-30 00:25:05 24 4
gpt4 key购买 nike

我有 2 个 Dataframe,如下所示:

DF1=
A B C D
0 AA BA KK 0
1 AD BD LL 0
2 AF BF MM 0

DF2=
K L
0 AA BA
1 AD BF
2 AF BF

最后我想得到的是:

DF1=
A B C D
0 AA BA KK 1
1 AD BD LL 0
2 AF BF MM 1

所以,我想比较两个数据帧,我想看看第一个数据帧(A 列和 B 列)的哪些行与第二个数据帧(K 列和 L 列)的相同,并在列 D 上分配 1第一个数据框。

我可以使用 for 循环,但是对于大量条目来说它会很慢。

任何线索或建议将不胜感激。

最佳答案

如果您重命名 df2 的列,然后您可以逐行比较,这会更容易:

In [35]:

df2.columns = ['A', 'B']
df2
Out[35]:
A B
0 AA BA
1 AD BF
2 AF BF
In [38]:

df1['D'] = (df1[['A', 'B']] == df2).all(axis=1).astype(int)
df1
Out[38]:
A B C D
0 AA BA KK 1
1 AD BD LL 0
2 AF BF MM 1

关于python - 比较两个 Python Pandas 数据帧的 2 列并获取公共(public)行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30291032/

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