Pandas ------ 向 Excel 文件中写入含有 multi-index 和 Multi-column 表头的数据
- 引言
- 正文
引言
之前在 《pandas向已经拥有数据的Excel文件中添加新数据》 一文中我们介绍了如何通过 pandas
向 Excel
文件中写入数据。那么对于含有多表头的数据,我们该如何将它们写入 Excel
中呢?
正文
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.xlsx
的 Excel
文件。文件内容如下:
可以看到,此时文件具有多个表头,沿着纵向有两层 column
的名字,沿着横向有两层 index
作为表头。对比代码,我们看到,如果想要两层表头,我们只需要在写入的时候将 index
和 columns
参数使用二维字符串数组来指定即可。
如果只需要一层表头,使用一维字符串数组来指定即可。
相信有细心的小伙伴已经发现了,当指定多层表头的时候,纵向表头和内容之间会自动产生一个空行。这实际上是 pandas
目前存在的一个 bug
,官方在 2024.01.25
之前仍旧未能修复。 事实上,它并不影响输出文件的主要内容。
至此,我们介绍了如何向 Excel
文件中写入含有 multi-index
和 Multi-column
表头的数据。
如果大家觉得有用,就请点个赞吧~