【问题标题】:Exporting list of dataframes having common header for 3 columns to Excel将具有 3 列通用标题的数据框列表导出到 Excel
【发布时间】:2021-04-16 14:19:30
【问题描述】:

我有一个已经有列标题的数据框列表,我想知道如何导出到 excel,它显示了三列的另一个常见标题,即 q1 是第一个具有索引的数据框,依此类推。

colnames=['q1','q2','q3']
    table=[pd.DataFrame([['tom', 10], ['nick', 15], ['juli', 14]], columns = ['Name', 'Age']),pd.DataFrame([['Nick', 10], ['Allen', 15], ['YOLO', 14]], columns = ['Name', 'Age']),
        pd.DataFrame([['james', 10], ['jack', 15], ['YOLO', 14],['jill', 10], ['twitter', 15], ['fb', 14]], columns = ['Name', 'Age'])]

如果可能的话,excel 中的预期结果应该是这种格式

q1            q2           q3
  name age      name age     name   age
0 tom  10     0 Nick  10   0 james   10 
1 nick 15     1 Allen 15   1 jack    15
2 juli 14     2 YOLO  14   2 YOLO    14
                           3 jill    10
                           4 twitter 15
                           5 fb      14

提前谢谢你。

【问题讨论】:

  • 我的回答对你有帮助吗?
  • @Green 是的,这正是我想要的,谢谢,我的 excel 报告现在好多了。

标签: python excel


【解决方案1】:

这是一个工作示例,只需安装 xlwt 软件包,您就可以将其转储到 excel 文件中。 (请注意,您还导出索引,您可以将其导出到 csv,而无需将方法替换为 to_csv 并添加标志 index=False - 但您将失去合并标题列的所需效果)

import pandas as pd
table=[pd.DataFrame([['tom', 10], ['nick', 15], ['juli', 14]], columns = ['Name', 'Age']),
       pd.DataFrame([['Nick', 10], ['Allen', 15], ['YOLO', 14]], columns = ['Name', 'Age']),
       pd.DataFrame([['james', 10], ['jack', 15], ['YOLO', 14],['jill', 10], ['twitter', 15], ['fb', 14]], columns = ['Name', 'Age'])]
names = ['q1', 'q2', 'q3']
for t, name in zip(table, names):
    t.columns = pd.MultiIndex.from_product([[name], t.columns])
pd.concat(table, axis=1, ).to_excel("my_excel.xls")

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2022-08-23
    • 2018-03-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-21
    • 1970-01-01
    相关资源
    最近更新 更多