可以使用XLSXWRITER将多个数据范围导出到Excel中的不同表格

发布于 2025-01-27 07:00:24 字数 1168 浏览 5 评论 0原文

我正在使用XLSXWRITER,并尝试将2 df s导出至excel中的2个不同的表。我遵循此 link> link < /a>。但这对我不起作用。让我说明:

# 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()

output.xlsx我只能看到对应于df1的Sheep1,而不是Sheep2。

输出

”在此处输入映像说明“

但是,如果我将引擎用作openpyxl而不是xlsxwriter,我都可以看到两者DFS导出到Sheet1&amp; Sheet2。

我认为,有一个小的调整,但无法弄清楚。

I am using XlsxWriter, and trying to export 2 DFs to 2 different Sheets in Excel. I followed this 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:

enter image description here

But, if I would have used engine as openpyxl instead of xlsxwriter, I can see both the dfs exported into Sheet1 & Sheet2.

I think, there is a small tweak, but can't figure it out.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

酒中人 2025-02-03 07:00:24

删除writer.save()。调用to_excel已经保存了数据。

to_excel不同的表格名称可以保存到不同的床单。

可以通过指定唯一的sheet_name来编写多个床单。

这也在文档示例中显示:

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')

Remove writer.save(). Calling to_excel has already saved the data.

The to_excel docs explain you only need to use a different sheet name to save to different sheets.

Multiple sheets may be written to by specifying unique 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')
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文