选择字符串列值在集

时间:2016-10-02 19:43:21

标签: python pandas

我有set个电子邮件地址,我从一组值中选择了这些地址。我希望对pandas DataFrame进行子集,以仅包含集合中未包含unique_id列值的行。以下是我所做的非常慢的事情:

signup_emails = set(online_signup.unique_id)
non_email_signup_event_emails = event_attendees[event_attendees.unique_id.apply(lambda x: x in signup_emails) == False].email

该表是几十万行,但是我的计算机只是冻结了这个命令,显示了高CPU负载,即使经过漫长的等待(20分钟)也不会终止。我怎么能更快地做到这一点?

1 个答案:

答案 0 :(得分:1)

使用isin方法。

event_attendees[event_attendees.isin(signup_emails)]

如果没有在signup_emails中,你可以

event_attendees[event_attendees.isin(signup_emails) == False]