[英]Can't export multiple DataFrames to different sheets in Excel using XlsxWriter
I am using XlsxWriter
, and trying to export 2 DF
s to 2 different Sheets in Excel
.我正在使用
XlsxWriter
,并尝试将 2 个DF
导出到Excel
中的 2 个不同的 Sheets。 I followed this link
.我点击了这个
link
。 But it doesn't work for me.但这对我不起作用。 Let me illustrate:
让我举例说明:
# Create a Pandas Excel writer using XlsxWriter as the engine.
df1 = pd.DataFrame({'A':[1,2,3],'B':[7,8,9]})
df2 = pd.DataFrame({'A':[1,2,3],'C':['AA','BB','CC']})
writer = pd.ExcelWriter(os.path.join(path,'Output.xlsx'), engine='xlsxwriter')
df1.to_excel(writer, sheet_name='Sheet1', index=False)
writer.save()
df2.to_excel(writer, sheet_name='Sheet2', index=False)
writer.save()
In Output.xlsx
I can only see Sheet1 corresponding to df1
, but not Sheet2.在
Output.xlsx
,我只能看到与df1
对应的 Sheet1,但看不到 Sheet2。
Output : Output :
But, if I would have used engine as openpyxl
instead of xlsxwriter
, I can see both the dfs
exported into Sheet1 & Sheet2.但是,如果我将引擎用作
openpyxl
而不是xlsxwriter
,我可以看到将dfs
导出到 Sheet1 和 Sheet2。
I think, there is a small tweak, but can't figure it out.我认为,有一个小调整,但无法弄清楚。
Remove writer.save()
.删除
writer.save()
。 Calling to_excel
has already saved the data.调用
to_excel
已经保存了数据。
The to_excel docs explain you only need to use a different sheet name to save to different sheets. to_excel文档说明您只需要使用不同的工作表名称即可保存到不同的工作表。
Multiple sheets may be written to by specifying unique sheet_name.
通过指定唯一的 sheet_name 可以写入多个工作表。
This is shown in the doc examples too:这也在文档示例中显示:
df2 = df1.copy()
with pd.ExcelWriter('output.xlsx') as writer:
df1.to_excel(writer, sheet_name='Sheet_name_1')
df2.to_excel(writer, sheet_name='Sheet_name_2')
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.