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 表头的数据。

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

相关推荐
X@AKS19 小时前
解决使用EasyExcel导出带公式的excel,公式不自动计算问题
excel
Wang2012201319 小时前
wps excel中把特定几列除以某一列,然后以百分比显示
excel
LilySesy20 小时前
ABAP+在select的时候,可以A=B A=C B=C这样子JOIN吗?
数据库·sql·ai·excel·sap·abap
zhishidi1 天前
Excel表格自适应大小设置方法
excel
缺点内向1 天前
C#: 高效移动与删除Excel工作表
开发语言·c#·.net·excel
万粉变现经纪人1 天前
如何解决 pip install 安装报错 [WinError 32] 文件被占用(杀毒/占用进程)问题
python·pycharm·flask·beautifulsoup·bug·pandas·pip
程序员晚枫2 天前
Python处理Excel的5个“神仙库”,办公效率直接翻倍!
python·excel
_处女座程序员的日常2 天前
如何预览常见格式word、excel、ppt、图片等格式的文档
前端·javascript·word·excel·开源软件
best_scenery2 天前
excel T检测时[检验类型]参数设置的方法
excel
路漫漫其修远.2 天前
解决excel复制页面行高无法复制的问题
excel