如何在不覆盖数据的情况下写入现有的excel文件(使用pandas)?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (106)

我使用以下列方式编写Excel文件:

import pandas

writer = pandas.ExcelWriter('Masterfile.xlsx') 

data_filtered.to_excel(writer, "Main", cols=['Diff1', 'Diff2'])

writer.save()

xlsx已经包含了许多不同的选项卡。

正确地写到“主”页,不幸的是它也删除了所有其他标签。

提问于
用户回答回答于

它使用openpyxl作为xlsx文件。快速查看代码ExcelWriter给出了这样的线索:

import pandas
from openpyxl import load_workbook

book = load_workbook('Masterfile.xlsx')
writer = pandas.ExcelWriter('Masterfile.xlsx', engine='openpyxl') 
writer.book = book
writer.sheets = dict((ws.title, ws) for ws in book.worksheets)

data_filtered.to_excel(writer, "Main", cols=['Diff1', 'Diff2'])

writer.save()
用户回答回答于

writer = pd.ExcelWriter(excel_file, engine='openpyxl')

否则它会

AttributeError: 'Workbook' object has no attribute 'add_worksheet'

扫码关注云+社区