繁体   English   中英

使用 python 将数据帧列表写入 Excel 表的最快方法

[英]Fastest way to write dataframes list to Excel sheets with python

我有 50 个CSV文件,每个文件有 20,000 行,我已经加入它们,然后按日期拆分它们。 我的结果是一个数据帧列表,我想将列表中的每个 dataframe 写入 output excel 中的一张表。 我已经尝试过:

with pd.ExcelWriter('output.xlsx') as writer:
        cont=0
        for x in List:
            x.to_excel(writer,sheet_name="csv_"+str(cont),index=False, engine='xlsxwriter',na_rep="NAN",startrow=1,startcol=1)
            cont+=1

但我得到一个 memory 错误,它需要永远。 所以我的问题是,有谁知道如何使用 python 以非常快速的方式将大数据帧写入 excel 工作表? 还是我应该用另一种语言来写?

我已经发布了另一个问题,显示我的错误: Writing pandas dataframes to excel crash

要修复 memory 错误,您必须增加cont变量;

with pd.ExcelWriter('output.xlsx') as writer:
        cont = 0
        for x in List:
            x.to_excel(writer,sheet_name="csv_"+str(cont),index=False, engine='xlsxwriter',na_rep="NAN",startrow=1,startcol=1)
            cont += 1

更好的语法;

with pd.ExcelWriter('output.xlsx') as writer:
        for i, x in enumerate(List):
            x.to_excel(writer,sheet_name="csv_"+str(i),index=False, engine='xlsxwriter',na_rep="NAN",startrow=1,startcol=1)

并检查您想要 output 的文件是否遵循Excel 规范。

如果所有检查结果仍然太慢,您可以使用更快的 excel 模块

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM