【问题标题】:How to write the data to an excel using python如何使用python将数据写入excel
【发布时间】:2021-05-18 18:18:21
【问题描述】:

我正在将字典中的数据写入到如下所示的 excel 中

my_dict = { 'one': 100, 'two': 200, 'three': 300}

df = pd.DataFrame(my_dict.items(), columns=['Summary','Count'])

with pd.ExcelWriter('outfile.xlsx') as writer:
    df.to_excel(writer, sheet_name='sheet1', index=False)

对于上面的代码,我得到了想要的输出,如下所示。

我还有一个列表,其中有一些值需要粘贴到 excel 的第三列。

my_list = [10,20,30]

预期输出:

编辑:我需要同时在 my_dict 和 my_list 中添加数据。

我已尝试找出解决方案,但遗憾的是无法找到。任何帮助表示赞赏! 非常感谢!!

【问题讨论】:

    标签: python python-3.x pandas pyexcel


    【解决方案1】:

    要在my_dictmy_list 中添加数据同时 定义数据框df,您可以将pd.DataFrame() 调用与.assign() 链接以定义名为my_list 的列使用输入列表my_list 作为输入:

    df = pd.DataFrame(my_dict.items(), columns=['Summary','Count']).assign(my_list=my_list)
    

    当然,最简单的方法是将它们分成2个语句,先通过pd.DataFrame定义数据框,然后添加列,如下所示。但这将在 2 语句中,不确定您是否仍将其视为 “同时”

    df = pd.DataFrame(my_dict.items(), columns=['Summary','Count'])  # Your existing statement unchanged
    
    df['my_list'] = my_list
    

    结果:

    print(df)
    
    
      Summary  Count  my_list
    0     one    100       10
    1     two    200       20
    2   three    300       30
    
    
    

    【讨论】:

    • 感谢您的回答,只是为了确保我以正确的方式进行探索,我们也可以这样做吗? df['my_list'] = my_list df = pd.DataFrame(my_dict.items(), columns=['Summary','Count'])
    • 您必须在调用 pd.DataFrame() 之后添加 df['my_list'] = my_list。这是最简单的方法,但在 2 个语句中。正如我看到你同时说的,因此我在一个声明中为你设计了解决方案。
    【解决方案2】:

    这也可以解决你的问题

    import pandas as pd
    my_dict = {'summary': ['one', 'two', 'three'],  'count': [100, 200, 300]}
    my_list = [10,20,30]
    df = pd.DataFrame.from_dict(my_dict)
    df['my_list'] = my_list
    df.to_excel('df.xlsx')
    

    【讨论】:

      猜你喜欢
      • 2019-06-04
      • 2023-03-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-09-05
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多