删除多个工作表上的空值并导出到excel



我正试图编写一段代码,删除特定列上多个excel表上的空值并导出文件。感谢您的帮助!

以下代码:

进口熊猫作为pd

fileName = 'data.xls'
df = pd.ExcelFile(fileName)
arrayOf_SheetNames = df.sheet_names
for sheetName in arrayOf_SheetNames:
masterdf = pd.read_excel(fileName, sheet_name=sheetName, header=4)
masterdf = masterdf.dropna(subset=['Column 1', 'Column 2'], inplace=True)
masterdf.to_excel('file_path.xls')

您遇到的一个问题是,您正在为for循环中的每个工作表重新定义masterdf。另一个问题是,writer.save()最终无法保存它。

dfs = pd.read_excel('/tmp/Untitled spreadsheet-2.xlsx', sheet_name=None, header=4)
writer = pd.ExcelWriter('/tmp/out.xlsx')
for sheetname, df in dfs.items():                                                                 
df.dropna(subset=['Column 1', 'Column 2'], inplace=True)
df.to_excel(writer, sheetname, index=False)
writer.save()          

最新更新