pandas将多个dataframe以多个sheet的形式保存到一个excel文件中

yipeiwu_com6年前Python基础

要实现这个功能,可能有多种方法,我在这里记录下一个比较方便的方法:

import pandas as pd
writer = pd.ExcelWriter('test.xlsx')
data1.to_excel(writer,sheet_name='sheet1')
data2.to_excel(writer,sheet_name='sheet2')
writer.save()

上面的方法会将原来的excel文件覆盖掉,假如想要对已经存在的excel文件进行修改,可以使用开源工具包(anaconda已附带)openpyxl

import pandas as pd
from openpyxl import load_workbook
 
writer = pd.ExcelWriter('test.xlsx',engin='openpyxl')
book = load_workbook(writer.path)
writer.book = book
dataframe.to_excel(excel_writer=writer,sheet_name="info5")
writer.save()
writer.close()

DataFrame.to_excel多次写入不同Sheet

主要需要pd.ExcelWriter([文件路径])方法

参考官方文档:

>>> writer = pd.ExcelWriter('output.xlsx')
>>> df1.to_excel(writer,'Sheet1')
>>> df2.to_excel(writer,'Sheet2')
>>> writer.save()

以下为实际应用:

"""
df1,df2均为sql查询来的数据
excel_filepath为要生成保存的excel文件地址
"""


write = pd.ExcelWriter(excel_filepath)
df1 = pd.DataFrame(d_f1)
excel_header = ['日期','年龄']#excel的标题
df1.to_excel(write,sheet_name='Sheet1',header=excel_header,index=False)


df2 = pd.DataFrame(d_f2)
excel_header = ['日期','人数']
df2.to_excel(write,sheet_name='Sheet2',header=excel_header,index=False)
write.save()

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

python三大神器之fabric使用教程

fabric 是一个python包 是一个基于ssh的部署工具包 通常用来对网站 微服务等等的批量部署 例如 我有5台线上服务器 可以通过一台对着5台分发,实现自动部署的目的。 简单介绍...

Python使用sax模块解析XML文件示例

本文实例讲述了Python使用sax模块解析XML文件。分享给大家供大家参考,具体如下: XML样例: <?xml version="1.0"?> <...

Python中input与raw_input 之间的比较

Python中input与raw_input 之间的比较 input和raw_input均可以接收输入,其差别如下所示: #input假设用户输入的是合法的Python表达式 >...

Python 3.x 安装opencv+opencv_contrib的操作方法

Note:这篇文章不会包含任何的技术解答,仅是安装教程。同样不保证对所有可能的安装中遇到的问题都能适用。不过如果不幸又幸运地遇到了跟我一样的问题,我希望你能从我这里找到解决方案。 前言...

Python批量生成特定尺寸图片及图画任意文字的实例

Python批量生成特定尺寸图片及图画任意文字的实例

因为工作需要生成各种大小的图片,所以写了个小脚本,顺便支持了下图画文字内容。 具体代码如下: from PIL import Image, ImageDraw, ImageFont...