我有两个数据框:一个具有单列(A),另一个具有两列(B)。我想将数据框 A 与数据框 B 的列进行比较(A 包含与 B 中的列相同类型的数据,并且某些行重叠)。然后我想保留数据帧 B 中重叠的行。
示例:
A = pd.DataFrame([['Smile1'], ['Smile4'], ['Smile6']], columns=['Smiles'])
B = pd.DataFrame([[24, 'Smile1'], [33, 'Smile2'], [2, 'Smile3'],
[85, 'Smile4'], [68, 'Smile5'], [102, 'Smile6']], columns=['ID', 'Smiles'])
在此示例中,我想保留 Smile1、4 和 6 及其 ID,最好创建一个包含这些列的新数据框,如下所示:
C = pd.DataFrame([[24, '微笑1'], [85, '微笑4'], [102, '微笑6']], columns=['ID', '微笑'])
我的实际数据框要大得多。
感谢您的宝贵时间!
最佳答案
B[B["Smiles"].isin(A["Smiles"])]
输出:
Out[8]:
ID Smiles
0 24 Smile1
3 85 Smile4
5 102 Smile6
关于python - 比较两个数据帧并保留重叠的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64514807/