pandas dataframe写入excel的多个sheet页面

pandas根据dataframe生成一个excel文件:

Dataframe保存新文件

直接把dataframe格式的数据保存到多个sheet页程序如下:

py 复制代码
excel_file = "导出excel文件.xlsx"
if os.path.exists(excel_file):
    os.remove(excel_file)

# 生成一个新文件
with pd.ExcelWriter(excel_file) as writer:
    pd.DataFrame(np.random.random(size=(5, 5))).to_excel(writer, sheet_name="sheet1")
    pd.DataFrame(np.random.random(size=(5, 5))).to_excel(writer, sheet_name="sheet2")
    pd.DataFrame(np.random.random(size=(5, 5))).to_excel(writer, sheet_name="sheet3")

追加写入:

首先需要指定使用openpyxl,然后使用pd.ExcelWriter(excel_file, engine='openpyxl', mode='a')打开文件,在文件中直接追加即可:

py 复制代码
with pd.ExcelWriter(excel_file, engine='openpyxl', mode='a') as writer:
    pd.DataFrame(np.random.random(size=(5, 5))).to_excel(writer, sheet_name="追加sheet1")
    pd.DataFrame(np.random.random(size=(5, 5))).to_excel(writer, sheet_name="追加sheet2")

完整示例

py 复制代码
import pandas as pd
import numpy as np
import os


def main():
    excel_file = "导出excel文件.xlsx"
    if os.path.exists(excel_file):
        os.remove(excel_file)
   
    # 生成一个新文件
    with pd.ExcelWriter(excel_file) as writer:
        pd.DataFrame(np.random.random(size=(5, 5))).to_excel(writer, sheet_name="sheet1")
        pd.DataFrame(np.random.random(size=(5, 5))).to_excel(writer, sheet_name="sheet2")
        pd.DataFrame(np.random.random(size=(5, 5))).to_excel(writer, sheet_name="sheet3")
    
    # 在已有的文件中添加
    with pd.ExcelWriter(excel_file, engine='openpyxl', mode='a') as writer:
        pd.DataFrame(np.random.random(size=(5, 5))).to_excel(writer, sheet_name="追加sheet1")
        pd.DataFrame(np.random.random(size=(5, 5))).to_excel(writer, sheet_name="追加sheet2")


if __name__ == '__main__':
    main()
相关推荐
毋语天1 小时前
Pandas 数据处理进阶:缺失值、合并、分组聚合与透视表
python·数据分析·pandas·数据清洗·透视表
hef2881 小时前
探索Pandas groupby的各种技巧和应用实例
pandas
SunnyDays10112 小时前
用Java打造交互式Excel仪表板:切片器的实战应用
java·excel
SunnyDays10113 小时前
Java 实现插入和删除 Excel 行和列
java·python·excel
Cloud_Shy6184 小时前
Python 数据分析基础入门:《Excel Python:飞速搞定数据分析与处理》学习笔记系列(附录 C 高级 Python 概念)
python·数据分析·excel
开开心心_Every5 小时前
支持自定义名单的实用随机抽签工具
运维·服务器·pdf·电脑·excel·启发式算法·宽度优先
Cloud_Shy6181 天前
Python 数据分析基础入门:《Excel Python:飞速搞定数据分析与处理》学习笔记系列(第十二章 用户定义函数 上篇)
python·数据分析·excel·pandas
QuZhengRong1 天前
【Luck-Report】缓存
java·前端·后端·vue·excel
程序员老油条1 天前
Excel合并的单元格拆分并批量填充为已有数据
excel
QQ12958455041 天前
FERP50 - Excel以存储过程方式访问数据仓库
数据仓库·spark·excel