Pandas ------ 向 Excel 文件中写入含有 multi-index 和 Multi-column 表头的数据

Pandas ------ 向 Excel 文件中写入含有 multi-index 和 Multi-column 表头的数据

引言

之前在 《pandas向已经拥有数据的Excel文件中添加新数据》 一文中我们介绍了如何通过 pandasExcel 文件中写入数据。那么对于含有多表头的数据,我们该如何将它们写入 Excel 中呢?

正文

python 复制代码
import pandas as pd


df1 = pd.DataFrame([['a', 'b'], ['c', 'd']],
                   index=[['row 1', 'row 2'],],
                   columns=[['layer1', 'layer2'],
                            ['col 1', 'col 2']])
df1.to_excel("output.xlsx")

运行上述代码后,我们会在代码存放的目录下找到一个名为 output.xlsxExcel 文件。文件内容如下:
可以看到,此时文件具有多个表头,沿着纵向有两层 column 的名字,沿着横向有两层 index 作为表头。对比代码,我们看到,如果想要两层表头,我们只需要在写入的时候将 indexcolumns 参数使用二维字符串数组来指定即可。

如果只需要一层表头,使用一维字符串数组来指定即可。

相信有细心的小伙伴已经发现了,当指定多层表头的时候,纵向表头和内容之间会自动产生一个空行。这实际上是 pandas 目前存在的一个 bug,官方在 2024.01.25 之前仍旧未能修复。 事实上,它并不影响输出文件的主要内容。

至此,我们介绍了如何向 Excel 文件中写入含有 multi-indexMulti-column 表头的数据。

如果大家觉得有用,就请点个赞吧~

相关推荐
盛夏绽放8 小时前
Vue3 中 Excel 导出的性能优化与实战指南
vue.js·excel
Tomorrow'sThinker11 小时前
[特殊字符] Python 自动查找替换 Excel 单元格内容 —— 高效批量处理
excel
Shipley Leo11 小时前
如何在Excel中每隔几行取一行
excel
bing_15811 小时前
Excel 数据透视表不够用时,如何处理来自多个数据源的数据?
excel
大虫小呓14 小时前
Python 处理 Excel 数据 pandas 和 openpyxl 哪家强?
python·pandas
想要入门的程序猿14 小时前
Qt写入excel
数据库·qt·excel
爱代码的小黄人1 天前
Excel VLOOKUP函数使用详解:原理、格式、常见错误与解决方案
excel
YouYOUyouFairy1 天前
EXCEL动态表格
excel
Maruko3101 天前
Java 实现excel大批量导出
excel·poi
忧郁的蛋~1 天前
HTML表格导出为Excel文件的实现方案
前端·html·excel