使用xlsxwriter将pandasdf写入excel文件?
我已经脚本编写pandasdf到excel文件与openpyxl。 请参阅将pd数据框填入现有的Excel表(使用openpyxl v2.3.2) 。
from openpyxl import load_workbook import pandas as pd import numpy as np book=load_workbook("excel_proc.xlsx") writer=pd.ExcelWriter("excel_proc.xlsx", engine="openpyxl") writer.book = book writer.sheets = dict((ws.title, ws) for ws in book.worksheets) data_df.to_excel(writer, sheet_name="example", startrow=100, startcol=5, index=False) writer.save()
该过程正常工作。 但是,每个返回的excel文件在打开时报告它已损坏,因为内容不可读。 Excel可以修复它并再次保存。 但这必须手动完成。 由于我必须处理许多文件,我如何解决/规避?
或者,我该如何更改代码才能使用“xlsxwriter”而不是“openpyxyl”?
当我只是用“engine =”xlsxwriter“”“交换”engine =“openpyxl”“时,python告诉我”'Worksheet'对象在data_df.to_excel行没有'write'属性。
另外:Excel告诉我“删除logging名为范围/ xl / workbook.xml部分”是腐败,必须修复。 我不知道,这是什么意思
我想你将不得不使用openpyxl
,因为xlsxwriter
不支持修改现有的Excel XLSX文件。
从文档 :
- 它无法读取或修改现有的Excel XLSX文件。