循环创建多个数据框并写入excel

     2023-03-11     278

关键词:

【中文标题】循环创建多个数据框并写入excel【英文标题】:create multiple dataframes in loop and write to excel 【发布时间】:2020-05-24 23:11:49 【问题描述】:

我正在一个生成数据帧的函数上运行一个循环,如下所示:

        Prd1    Prd2     Prd3    Prd4    Prd5    Prd6
Loc1    0        0        0        0       0       0
Loc2    0        0        0        0       0       0
Loc3    0      30.61      0        0   319.58   430.87  
Loc4    0        0        0        0       0    120.73
Loc5    0        0        0        0       0       0
Loc6    78.21  822.36     0        0       0       0

我想多次运行该函数,以生成一系列数据框,然后分析或可视化随时间推移的演变。为此,将它们全部放在一个 Excel 工作簿中是理想的。但是我正在努力解决这个问题。 我试过了

for case in CASES:
    B= A[case]
    result = function(B)
    print(result)
    with pd.ExcelWriter('results.xlsx') as writer:  # doctest: +SKIP
        result.to_excel(writer, sheet_name='case_'+str(case))

我希望这会将不同的结果写入同一个电子表格。但是,因此电子表格仅包含带有最后一种情况的选项卡。 我可以看到在 CASES 循环中的上述内容每次都会覆盖现有的工作表。 是否有保留已经存在的工作表并将任何新工作表“附加”到现有工作簿的功能? 提前致谢。 问候P。

【问题讨论】:

您需要将所有创建的数据帧保存到单个 csv 文件中吗? “循环每次都会覆盖现有的工作表。”:首先在df 中聚合,然后写入一次 pd.ExcelWriter 的开头移到 for 循环之外,这样它就会在其中打开和关闭一次,而不是每次迭代都覆盖它 乔恩·克莱门茨,你是个明星,这就像一种享受。 :-) 【参考方案1】:

根据这个SO thread,您可以在开始循环之前检索工作表名称列表并检查现有工作表并跳过它们。

xl = pd.ExcelFile('results.xlsx')
existing_sheets = xl.sheet_names

for case in CASES:
    if f'cast_str(case)' in existing_sheets:
        continue
    B= A[case]
    result = function(B)
    print(result)
    with pd.ExcelWriter('results.xlsx') as writer:  # doctest: +SKIP
        result.to_excel(writer, sheet_name=f'case_str(case)')

【讨论】:

Pandas:有没有办法遍历数据框并使用多个条件创建新的数据框?

】Pandas:有没有办法遍历数据框并使用多个条件创建新的数据框?【英文标题】:Pandas:Isthereawaytoiteratethroughadataframeandcreatenewdataframesusingmultipleconditions?【发布时间】:2022-01-0322:13:26【问题描述】:我需要拆分数据框,以便可以使... 查看详情

在 ggplot/ggmap 中绘制多个数据框并创建统一图例的问题

】在ggplot/ggmap中绘制多个数据框并创建统一图例的问题【英文标题】:Issueswithplottingmultipledataframesinggplot/ggmap&creatingaunifiedlegend【发布时间】:2020-11-1907:36:16【问题描述】:library(sp)library(sf)library(ggplot2)library(ggmap)格式化纽约地... 查看详情

python读取多个excel文件(删除字段数据格式转换dataframe多表合并)并写入elasticsearch实战(自动创建索引写入elasticsearch探索性数据分析)

Python读取多个excel文件(删除字段、数据格式转换、dataframe多表合并)并写入ElasticSearch实战(自动创建索引、写入ElasticSearch、探索性数据分析)目录 查看详情

将用户定义的对象转换为数据框并写入 RDBMS - 如何维护与数据库的映射?

...2016-12-2119:42:12【问题描述】:我在mysql中有如下表结构:创建表用户(idINTNOTNULL,名称VARCHAR(20)非空,年龄INTN 查看详情

如何在同一循环中“从 .csv 读取并写入 excel”

】如何在同一循环中“从.csv读取并写入excel”【英文标题】:HowTo\'ReadFrom.csvandWriteToexcel\'InTheSameLoop【发布时间】:2019-05-2821:40:56【问题描述】:我正在尝试从.csv文件中读取数据并将该数据粘贴到3270终端屏幕上,同时将这些尝试... 查看详情

Pyspark循环遍历数据框并减少列值

】Pyspark循环遍历数据框并减少列值【英文标题】:Pysparkloopoverdataframeanddecrementcolumnvalue【发布时间】:2021-07-3022:07:39【问题描述】:我需要帮助在pyspark数据帧中逐行循环:例如:df1+---------+|id|value|+---------+|a|100||b|100||c|100|+--------... 查看详情

使用 X++ 在 Excel 中创建多个工作表

】使用X++在Excel中创建多个工作表【英文标题】:CreatingmultipleworksheetsinExcelusingX++【发布时间】:2012-12-2114:23:04【问题描述】:我目前能够创建一个新的Excel电子表格,写入它并通过X++保存电子表格。我在一个新类中有几个方法,... 查看详情

使用 Python 将列表中的数据帧写入多个 excel 文件

】使用Python将列表中的数据帧写入多个excel文件【英文标题】:WritedataframesfromalistintomultipleexcelfileusingPython【发布时间】:2021-05-1503:44:01【问题描述】:我有:list_of_DataFrames=[df_1,df_2,df_n,...]我想将这些数据帧中的每一个写入一个... 查看详情

如何从 C# 中的嵌套循环写入多维数组?

】如何从C#中的嵌套循环写入多维数组?【英文标题】:HowtowritetomultidimensionalarrayfromnestedloopinC#?【发布时间】:2020-07-0315:44:38【问题描述】:我是C#新手。我在Unity中编写了一个代码,它创建了多个(9,3x3)多维数据集,并且我使用... 查看详情

python如何把json数据写入excel

...会pandas追答 参考技术Bcsv就是个普通的文本文件。不存在多个sheet。所以:没法导出带多个sheet的csv文件。详见:【记录】使用Python读取/导出(写入)CSV文件带多个sheet的,是excel文件。用python导出,带多个的excel,说实话我没弄... 查看详情

Python:将图像和数据帧写入同一个 excel 文件

...入同一个文件。这是我目前拥有的。似乎当我运行我的for循环时,它不会让 查看详情

如何在通过 Pandas 在 csv 中写入多个 for 循环的数据时在单个单元格中附加数据?

】如何在通过Pandas在csv中写入多个for循环的数据时在单个单元格中附加数据?【英文标题】:HowtoappenddatainsinglecellwhilewritingdataofmultipleforloopinacsvthroughPandas?【发布时间】:2022-01-1504:03:18【问题描述】:问题:-我在一个主for循环中... 查看详情

如何使用比较多个数据框并使用熊猫返回匹配项

】如何使用比较多个数据框并使用熊猫返回匹配项【英文标题】:Howtousecompareseveraldataframesandreturnthematchesusingpandas【发布时间】:2018-01-2221:12:01【问题描述】:如果我有几个看起来像这样的pandas数据框:NameScoreSam4Aaron5Neil6Ben7NameSc... 查看详情

python操作excel将数据写入多个sheet(代码片段)

将一个列表数据写入output.xlsx的a,b,c……等sheet中importpandasaspddf1=pd.DataFrame(‘a‘:[3,1],‘b‘:[4,3])df2=df1.copy()withpd.ExcelWriter(‘F:\python入门\数据2\output.xlsx‘)aswriter:str1=[‘a‘,‘b‘,‘c‘,‘d‘ 查看详情

使用for循环(Python)追加/连接多个excel数据集

】使用for循环(Python)追加/连接多个excel数据集【英文标题】:Append/Concatenatemultipeexceldatasetsusingforloop(Python)【发布时间】:2018-07-2708:40:48【问题描述】:我正在尝试更有效地合并来自模拟运行的数据。目前,数据在不同文件夹... 查看详情

python操作excel将数据写入多个sheet(代码片段)

将一个列表数据写入output.xlsx的a,b,c……等sheet中importpandasaspddf1=pd.DataFrame(‘a‘:[3,1],‘b‘:[4,3])df2=df1.copy()withpd.ExcelWriter(‘F:python入门数据2output.xlsx‘)aswriter:str1=[‘a‘,‘b‘,‘c‘,‘d‘,‘e 查看详情

如何利用excel电子表格实现纯表格循环扩展报表

场景描述在做报表的时候,我们会遇到制作循环报表的时候。循环扩展报表是按照某个指定的字段自动循环扩展出多个表格的一类报表。它主要分为纯表格循环扩展和图形循环扩展。下面我们来讲讲如何利用报表设计器实现纯表... 查看详情

使熊猫具有多索引列的多个数据框并完全连接

】使熊猫具有多索引列的多个数据框并完全连接【英文标题】:makingpandasmultipledataframeswithmulti-indexedcolumnsandjoinaltogether【发布时间】:2020-12-0314:08:09【问题描述】:有些人会说这需要是两个独立的问题,但它们是相互关联的,所... 查看详情