我有两个数据帧:
df1 =
a b
1 555
2 555
4 555
4 555
5 555
6 555
7 555
8 555
15 555
1 555
以及
df2 =
a b
2 666
2 666
3 666
4 666
5 666
2 666
3 666
9 666
我想在两个数据帧之间找到相同的column
a
值,并将它们放入新的数据帧(也包括其他列的值)。这里是b
)期望输出为:
df3 =
a b
2 555
2 666
2 666
4 555
4 555
4 666
…
等等。
我试过:
df3= pd.merge(df1, df2, on=['a'], how='inner')
但它给了我不同的东西
最佳答案
这与其他解决方案没有太大不同
set1 = set(df1["a"].tolist())
set2 = set(df2["a"].tolist())
inter = list(set1.intersection(set2))
df3 = pd.concat([df1[df1["a"].isin(inter)],
df2[df2["a"].isin(inter)]],
ignore_index=True)
关于python - 由不同数据框的唯一值组成的新数据框,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/58412603/