我想做的是删除熊猫数据框中的一行,如果该行中的值与另一列中的任何位置匹配。这是Excel中的一个粗略的模拟示例:
因此,在这种情况下,我想删除第2行,因为在C列中找到了该电子邮件地址。
非常感谢您的帮助。
答案 0 :(得分:3)
您必须将Series.isin
与~
运算符配合使用,才能获得与布尔索引相反的效果,您可以将其读取为not isin
# Print example dataframe
print(df)
Company Email Second Email
0 ABC Inc abc@abc.com
1 ABC Inc 123@abc.com abc@abc.com
2 XYZ Inc jkl@xyz.com
使用isin
df = df[~df['Second Email'].isin(df['Email'])]
print(df)
Company Email Second Email
0 ABC Inc abc@abc.com
2 XYZ Inc jkl@xyz.com
答案 1 :(得分:1)
您可以使用df[~df.b.isin(de.c)]
这将查找不在c中的所有b(开头的〜就像!!)