【问题标题】:Append in exisitng excel sheet using PyExcelerate使用 PyExcelerate 追加到现有的 Excel 工作表中
【发布时间】:2019-12-18 18:39:10
【问题描述】:

我有一个包含大量记录(超过 300,000 行和 100 列)的数据框。我想将此数据帧写入一个预先存在的 excel 文件(比如 Output.xlsx)。

我使用 openpyexcel 进行了如下尝试-

with pd.ExcelWriter('Output.xlsx',engine='openpyxl', mode='a') as writer:
    df.to_excel(writer,sheet_name='mysht1', index=False )

这对于 1000 条记录来说效率很低,大约需要 10 秒。

我发现对于 300,000 条记录,PyExcelerate 的性能要快得多,大约需要 2 分钟。

但是,我能够将工作表添加到新的 excel 文件中,但是如何将其附加到现有的文件中。

values = [df.columns] + list(df.values)
wbk = Workbook()
ws = wbk.new_sheet('mysht1', data=values)
wbk.save('out.xlsx')
#wbk.save('Output.xlsx') just override my Output.xlsx with this new tab.

【问题讨论】:

    标签: python excel pandas pyexcelerate


    【解决方案1】:

    PyExcelerate 不支持读取 Excel 文件,因此无法轻松做到这一点。阅读也超出了图书馆的范围,因此不幸的是不太可能添加。一种可能的、更快的解决方法是编写要附加到新 Excel 文件的工作表并使用另一个脚本来合并这两个文件。

    【讨论】:

    • 你能指定应该使用哪些脚本吗?
    猜你喜欢
    • 2020-07-13
    • 2017-08-25
    • 2021-07-22
    • 1970-01-01
    • 2014-01-24
    • 1970-01-01
    • 2014-07-09
    • 1970-01-01
    • 2018-03-22
    相关资源
    最近更新 更多