【问题标题】:Split Pandas Dataframe into Multiple Excel Sheets Based on Index Value in Dataframe根据 Dataframe 中的索引值将 Pandas Dataframe 拆分为多个 Excel 工作表
【发布时间】:2021-01-14 19:20:30
【问题描述】:

我有这个数据集:

其中的“产品”列具有值“气体”、“油”和“水”。我想将此数据框写入一个包含三个工作表的单个 Excel 工作簿,其中三个工作表中包含“Gas”、“Oil”和“Water”数据。

我试过了:

并不断收到类型错误。感谢您提供任何帮助。

【问题讨论】:

  • 你自然会得到一个错误,你将整个数据框附加到每个工作表,并且 Product 有 NaN 值,所以你会得到浮点错误。
  • 能不能下次直接发数据框不发图片?那会很有帮助。致力于此。您没有定义要在代码中保存数据的工作表

标签: python pandas dataframe xlsxwriter


【解决方案1】:

IIUC,

您可以按产品分组并将其指定为工作表名称,同时根据聚合将数据分配到工作表中。

writer = pd.ExcelWriter('Report.xlsx')

for group, data in result2.groupby('Product'):
    data.to_excel(writer,group)
writer.save()
   

【讨论】:

    【解决方案2】:

    这应该可行。尝试将此示例应用于您的需求:

    import pandas as pd
    
    data = pd.read_excel('test.xlsx', index_col = 0)    
    
    Gas = data.loc['Gas']  # look for index Gas
    Oil = data.loc['Oil']  # look for index Oil
    
    writer = pd.ExcelWriter("Test.xlsx", engine = 'xlsxwriter')
    Gas.to_excel(writer, sheet_name = 'Gas')
    Oil.to_excel(writer, sheet_name = 'Oil')
    writer.save()
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-03-02
      • 2019-09-16
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-05-28
      • 1970-01-01
      相关资源
      最近更新 更多