python - 选择与另一个数据框中的列匹配的行
问题描述
我有 2 个数据框 df_Participants 和 df_Movements ,我只想在df_Movements
参与者打开时才保留行df_Participants
。
df_参与者:
id
0 1053.0
1 1052.0
2 1049.0
df_Movements
id participant
0 3902 1053
1 3901 1053
611 2763 979
612 2762 979
预期成绩:
id participant
0 3902 1053
1 3901 1053
到目前为止我所尝试的:
remove_incomplete_submissions = True
if remove_incomplete_submissions:
df_Movements = df_Movements.loc[df_Movements['participant'].isin(df_Participants['id'])]
当我检查唯一参与者的数量时,它不匹配。我知道这很简单,但我似乎没有注意到这里的问题。
解决方案
您可以使用合并:
new_df = df_Participants.merge(df_Movements, how='left', left_on='id', right_on='participant')
推荐阅读
- android - 无法运行程序“su”:错误=13,Android 应用程序中的权限被拒绝
- mailgun - Mailgun:创建域失败。超出帐户的域配额
- python - Pandas:基于条件的广泛数据框
- opencv - 使用 opencv2 和 numpy 使用其边界框旋转图像以 45 度角产生更差的框
- bash - 如何在 bash 文件中正确添加和删除符号链接
- javascript - 表元素断言
- android - com.app.MainActivity 不能转换为 com.facebook.react.ReactActivity
- sql - SQL 性能对约束或唯一索引中的多个列的影响
- vb.net - VB.NET 数据库不在 MS Access 和登录错误
- python - 解析 HTML——为什么这个文档必须用文本而不是标签来解析?