首页 > 解决方案 > 如何从python中数据框中的所有工作表中删除重复项

问题描述

我有一个包含工作表数量的数据框,我想从所有工作表中删除重复项。我在下面的代码中使用

df = df.drop_duplicates(subset='Month',keep='last')

之后我保存这个df

df.to_excel(path,index=False)

但是它只删除了第一张重复的纸并且只显示了一张

标签: python-3.x

解决方案


我建议将文档的每张纸视为一个单独的数据框,然后在迭代中根据您的标准删除每组的重复项。这是我想到的概念的快速草稿,共 2 张:

xls = pd.ExcelFile('myFile.xls')
xls_dfs = []
df1 = pd.read_excel(xls, 'Sheet1')
xls_dfs.append(df1)
df2 = pd.read_excel(xls, 'Sheet2')
xls_dfs.append(df2)
for df in xls_dfs:
    df = df.drop_duplicates(subset='Month',keep='last')
    df.to_excel('myFile.xls',index=False)

推荐阅读