将多索引列的pandas数据框导出到Excel中,一级列名未合并,另一级列名合并的步骤如下:
pip install pandas
import pandas as pd
data = {'Index1': [1, 1, 2, 2],
'Index2': ['A', 'B', 'A', 'B'],
'Column1': [10, 20, 30, 40],
'Column2': [100, 200, 300, 400]}
df = pd.DataFrame(data)
df = df.set_index(['Index1', 'Index2'])
to_excel
方法将数据框导出到Excel文件:df.to_excel('output.xlsx')
此时导出的Excel文件中的一级列名并未合并,另一级列名则合并为多级列名。如果需要将一级列名合并为一个单元格,可以使用pandas的ExcelWriter对象来处理。
writer = pd.ExcelWriter('output.xlsx', engine='xlsxwriter')
workbook = writer.book
header_format = workbook.add_format({'bold': True, 'align': 'center'})
merge_format = workbook.add_format({'bold': True, 'align': 'center', 'valign': 'vcenter'})
to_excel
方法并传递ExcelWriter对象,将数据写入Excel文件:df.to_excel(writer, sheet_name='Sheet1', startcol=0, startrow=1)
write
方法合并一级列名:worksheet = writer.sheets['Sheet1']
worksheet.merge_range(0, 0, 0, 1, 'First Level', merge_format)
writer.save()
现在,导出的Excel文件中的一级列名已经合并为一个单元格,另一级列名合并为多级列名。
请注意,上述步骤仅适用于导出到Excel文件。如果需要导出到其他格式(例如CSV),请使用相应的导出方法(如to_csv
)并进行适当的调整。
腾讯云相关产品和产品介绍链接地址:
领取专属 10元无门槛券
手把手带您无忧上云