【问题标题】:Save workbook after working on a sheet in pandas在熊猫中处理工作表后保存工作簿
【发布时间】:2021-10-04 02:42:59
【问题描述】:

我在一个带有多个工作表的 Excel 工作簿中读取并处理了一个工作表,如下所示:

xls = pd.ExcelFile(r'C:\Users\file.xlsx')
enq = pd.read_excel(xls, 'Enq Data')

使用完 enq 表后,如何将工作簿导出到 excel?我希望工作簿包含对 enq 表所做的更改?我尝试将“xls”导出到_excel,但这显然不起作用

【问题讨论】:

    标签: python-3.x pandas dataframe


    【解决方案1】:

    这取决于工作簿包含的内容(AFAIK 一些花哨的 excel 内容可能无法保存)。

    如果它只是数据,那么你可以使用任何方法,即使pandas 可以通过加载整个工作簿并将所有数据写入文件来处理它。

    data = pd.read_excel('data.xlsx', sheetname=None)
    writer = pd.ExcelWriter('target.xlsx', engine='xlsxwriter')
    for sheetname in data.keys():
        # skipp "Enq Data" if needed
        data[sheetname].to_excel(writer, sheetname=sheetname)
    
    # new sheet with your new data
    enq.to_excel(writer, sheetname="Enq Data")
    writer.save()
    

    如果您明确需要修改文件,或者如果它包含其他内容而不是数据,那么根据它包含的内容,您将需要使用一些专门的库,例如openpyxl.

    检查以下问题/答案: Modify an existing Excel file using Openpyxl in Python https://stackoverflow.com/a/28254411/9327628

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-03-10
      • 1970-01-01
      • 2018-01-02
      • 1970-01-01
      相关资源
      最近更新 更多