根据其他数据框列删除数据框中的行

时间:2020-09-17 15:05:15

标签: python pandas dataframe

我有几个数据集。一个包括用户列表,而其他是所述用户的活动。问题在于某些用户需要删除(管理员,测试用户等)。

## Save users that should be removed
invalid_user = users[(users['E-Code'].isnull())]
## Remove users
user = users.drop(users[(users['E-Code'].isnull())].index)

现在我要从其他数据集中删除无效用户。我无法使用E-Code列,因为它在其他数据集中不存在,我必须使用另一个ID(数据库中的unidue ID)。目前,我正在研究跟踪用户登录的数据集。我尝试失败的地方:

df = logins[logins['user_id'] != invalid_users['ID']]

df = logins['user_id'].drop(invalid_patients['ID])

由于我需要多次执行此操作,因此一旦找到它,我希望创建一个方法。我无法共享数据,但是如果需要,我可以创建一个示例。

谢谢!

1 个答案:

答案 0 :(得分:1)

使用isin

进行检查
df = logins[~logins['user_id'].isin( invalid_users['ID'])]