假设我有下面的第一个 pandas DataFrame:
A B ID
0 22.0 male 12
1 38.0 female 34
2 26.0 female 44
3 35.0 female 04
4 35.0 male 78
第二个 pandas DataFrame 是:
C D ID
0 xx xx 12
2 xx xx 44
4 xx xx 78
我希望输出如下:
A B ID
0 22.0 male 12
2 26.0 female 44
4 35.0 male 78
我只想从第一个 DataFrame 中选择第二个 DataFrame 中出现的具有相同 ID 的行。
最有效的方法是什么?
最佳答案
只需使用 isin
:
>>> df1[df1['ID'].isin(df2['ID'])]
A B ID
0 22.0 male 12
2 26.0 female 44
4 35.0 male 78
或者merge
:(更喜欢isin
)
>>> df1.merge(df2['ID'])
A B ID
0 22.0 male 12
1 26.0 female 44
2 35.0 male 78
关于python - 从 Pandas DataFrame 中选择与另一个 DataFrame 中的列值完全相同的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71569216/