Panda比较并删除csv和xls中的数据

时间:2017-01-26 17:11:28

标签: python csv pandas xls

我有2个文件(.csv和.xls)。 .csv只有一列(电子邮件)。 .xls有很多列。 我尝试比较这两个文件中的电子邮件列,并从.csv中删除.xls邮件地址。 邮件地址不是排序。

我写了一些代码,但我没有达到目标:

excel = pd.read_excel(file, skiprow=10, parse_cols = 'AL')
csv = pd.read_csv(namelist_file)
excel_keep = excel[excel.isin(csv)]
mask = excel.isin(csv.tolist())
excel[~mask]
print(excel_keep)

请问您有什么想法吗? 问候。

1 个答案:

答案 0 :(得分:1)

df_csv = pd.read_csv(path_to_csv)
df_xlsx = pd.read_excel(path_to_excel)

## assuming column header for email in both files is 'email'
## if not change it by df = df.rename(columns={'oldName': 'email'})

df_xlsx = df_xlsx[df_xlsx['email'].isin(df_csv['email'])]

希望有所帮助