【问题标题】:How to transform results from a dictionary in python into excel?如何将python字典中的结果转换为excel?
【发布时间】:2021-05-14 00:36:47
【问题描述】:

您好,我正在运行以下格式的策略的结果:

2013-12-27 00:00:00: {'SPX': 1841.4, 'SPTR': 3302.66, ..., 'prev_day_rate': 0.08}
...
2015-12-27 00:00:00: {'SPX': 1841.4, 'SPTR': 3302.66,..., 'prev_day_rate': 0.08}

我将其转换为 DataFrame 并复制到 excel,但渲染到处都是,而不是我可以使用的东西(因为它是字典?)

使输出更加用户友好的步骤是什么?

谢谢

【问题讨论】:

    标签: python dataframe dictionary


    【解决方案1】:

    为了在 python 中将数据从 dic 传输到 excel,您可以使用 panda:

    import pandas as pd
    dic1 = {"SPX": 1841.4, "SPTR":3302.66 ..., 'prev_day_rate': 0.08}
    dic2 = {'SPX': 1841.4, 'SPTR': 3302.66,..., 'prev_day_rate': 0.08}
    d = pd.DataFrame(data=dic1, index=[0])
    d = (d.T)
    print (d)
    d.to_excel('dic1.xlsx')
    

    如果你不想使用 panda,使用 import csv 你可以使用任何你想要的格式

    【讨论】:

      【解决方案2】:

      你应该使用像 xlswriter 这样的东西,然后你可以遍历字典。

      import xlsxwriter
      # Create a workbook and add a worksheet.
      workbook = xlsxwriter.Workbook('Expenses01.xlsx')
      worksheet = workbook.add_worksheet()
      # Some data we want to write to the worksheet.
      expenses = (
          ['Rent', 1000],
          ['Gas',   100],
          ['Food',  300],
          ['Gym',    50],
      )
      # Start from the first cell. Rows and columns are zero indexed.
      row = 0
      col = 0
      # Iterate over the data and write it out row by row.
      for item, cost in (expenses):
          worksheet.write(row, col,     item)
          worksheet.write(row, col + 1, cost)
          row += 1
      # Write a total using a formula.
      worksheet.write(row, 0, 'Total')
      worksheet.write(row, 1, '=SUM(B1:B4)')
      workbook.close()
      

      更多信息:https://xlsxwriter.readthedocs.io/tutorial01.html

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2010-09-17
        • 2020-04-12
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-11-17
        • 2021-07-01
        相关资源
        最近更新 更多