gpt4 book ai didi

Python Pandas 从列表中删除包含值的行

转载 作者:行者123 更新时间:2023-11-28 21:06:40 25 4
gpt4 key购买 nike

我正在将两个包含联系信息的大型 CSV 与 Pandas 进行比较。我想从一个 CSV 中删除包含另一个 CSV 中任何电子邮件地址的任何行。

如果我有

DF1

name phone email
1 1 hi@hi.com
2 2 bye@bye.com
3 3 yes@yes.com

DF2

name phone email
x y bye@bye.com
a b yes@yes.com

我会留下

东风3

name phone email
1 1 hi@hi.com

除了电子邮件地址,我不关心任何列。这看起来很容易,但我真的很难解决这个问题。

这是我所拥有的,但我认为这还差得远:

def remove_warm_list_duplicates(dataframe):
'''Remove rows that have emails from the warmlist'''
warm_list = pd.read_csv(r'warmlist/' + 'warmlist.csv'
, encoding="ISO-8859-1"
, error_bad_lines=False)
warm_list_emails = warm_list['Email Address'].tolist()
dataframe = dataframe[dataframe['Email Address'].isin(warm_list_emails) == False]

最佳答案

你可以使用 pandas isin()

df3 = df1[~df1['email'].isin(df2['email'])]

结果 df

    name    phone   email
0 1 1 hi@hi.com

关于Python Pandas 从列表中删除包含值的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42568050/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com