如何使用多张工作表和不同的工作表名称将 dfs 导出为 excel
Posted
技术标签:
【中文标题】如何使用多张工作表和不同的工作表名称将 dfs 导出为 excel【英文标题】:How to export dfs to excel with multiple sheets and different sheet names pandas 【发布时间】:2019-01-22 20:23:57 【问题描述】:我正在尝试通过将 df 打印到 Excel 中的工作表并将学生 ID 作为选项卡名称来迭代学生 ID。
换句话说:
df 到 excel 和选项卡名称是 1
下一个 df 到新工作表和选项卡名称是 2
遍历所有学生 ID
final=[dataframe,dataframe,dataframe]
studentIDs=[1,2,3]
writer = pd.ExcelWriter('Name.xlsx', engine='xlsxwriter')
for df in final:
df.to_excel(writer, sheet_name='%s' %studentIDs)
writer.save()
【问题讨论】:
这可能会回答你的问题:***.com/questions/51792576/… @HenryWoody 这也是一个很好的实现;使用 zip() 【参考方案1】:final=[dataframe,dataframe,dataframe]
studentIDs=[1,2,3]
writer = pd.ExcelWriter('Name.xlsx', engine='xlsxwriter')
for i,df in enumerate(final, 0):
df.to_excel(writer, sheet_name='%s' %studentIDs[i])
writer.save()
如果列表总是按顺序匹配,那么您可以使用 enumerate(它为您提供从该索引开始的列表),然后将其与上面的列表匹配,但我建议使用字典
final =
1 : dataframe,
2 : dataframe,
3 : dataframe
writer = pd.ExcelWriter('Name.xlsx', engine='xlsxwriter')
for sheet_name in final:
final[sheet_name].to_excel(writer, sheet_name= str(sheet_name))
writer.save()
【讨论】:
这太完美了!我很感激帮助。我已经有了这段代码,但它不起作用,因为当我运行它时,“writer.save()”在循环中,而你在循环之外有它!谢谢!以上是关于如何使用多张工作表和不同的工作表名称将 dfs 导出为 excel的主要内容,如果未能解决你的问题,请参考以下文章