繁体   English   中英

挣扎到 append dataframe 到 Python 中现有的.xlsx 文件

[英]Struggling to append dataframe to existing .xlsx file in Python

我正在尝试将 append a dataframe 添加到现有的 excel 电子表格,但我无法将其附加到现有的 SHEET(我的 excel 文件只有一张名为“Sheet1”的工作表,其中包含现有数据集)。

    with pd.ExcelWriter(xlsx_path, mode="a", engine="openpyxl",sheet_name="Sheet1",if_sheet_exists="overlay") as writer:
          transfer.to_excel(writer,header=None,index=False)

当我使用上述代码时,当我打开现有电子表格时,我请求通过 to_excel function 附加的 dataframe 中的新数据出现在一个单独的工作表中,标题为“工作表 11”。 有人可以解释为什么会这样吗? 我怎样才能从 dataframe 中获取新数据以显示在 Sheet1 中现有电子表格的底部?

谢谢!

请参阅上面写的注释。

我不知道为什么将数据附加到“Sheet11”,但是“sheet_name=”不是 ExcelWriter 中的属性,因此您应该收到警告。 该属性应与“to_excel”一起使用。
您需要从 state 到 append 的哪一行,否则新数据将从第 1 行开始覆盖任何现有数据。 您可以获得工作表的最大行并使用它。

sheet_to_update = 'Sheet1'
with pd.ExcelWriter(xlsx_path,
                    mode="a",
                    engine="openpyxl",
                    if_sheet_exists="overlay") as writer:
    transfer.to_excel(writer,
                header=None,
                index=False,
                sheet_name=sheet_to_update,
                startrow=writer.sheets[sheet_to_update].max_row)

暂无
暂无

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

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