一、概述
在使用Pandas的to_excel()方法写入数据时,当我们想将多个数据写入一个Excel表的不同DataFrame中,虽然能够指定sheet_name参数,但是会重写整个Excel之后才会存储。
现在有3个sheet,内容如下:
>>> import pandas as pd
>>> df1 = pd.read_excel('456.xlsx', sheet_name='Sheet1')
>>> df2 = pd.read_excel('456.xlsx', sheet_name='Sheet2')
>>> df3 = pd.read_excel('456.xlsx', sheet_name='Sheet3')
>>> df1
姓名 性别 年龄
0 张三 男 23
1 李四 男 25
2 王五 男 21
>>> df2
姓名 身高 体重
0 张三 170 130
1 李四 171 126
2 王五 165 140
>>> df3
姓名 收入
0 张三 4000
1 李四 4500
2 王五 5000
>>>
一般情况下:
>>> df1.to_excel('789.xlsx', sheet_name='Sheet1', index=False, header=True)
>>> df2.to_excel('789.xlsx', sheet_name='Sheet2', index=False, header=True)
>>> df3.to_excel('789.xlsx', sheet_name='Sheet3', index=False, header=True)
结果如下:
只有最后一个存储的内饰数据,并不符合我们的需求。
二、解决方法
使用新的方式保存
with pd.ExcelWriter('789.xlsx') as writer:
df1.to_excel(writer, sheet_name='Sheet1', index=False, header=True)
df2.to_excel(writer, sheet_name='Sheet2', index=False, header=True)
df3.to_excel(writer, sheet_name='Sheet3', index=False, header=True)
结果如下:
实现插入相同Excel表中不同Sheet_name!
本文参考链接:
https://blog.youkuaiyun.com/weixin_43060843/article/details/100766677
本文介绍如何使用Pandas库将多个DataFrame分别写入到同一个Excel文件的不同工作表中,避免仅最后写入的数据被保留的问题。通过使用with pd.ExcelWriter() as writer的方式,可以有效地将多个数据表按需写入到指定的Excel文件的不同sheet中。
879





