私は次の方法でパンダを使用して Excel ファイルに書き込みます。
import pandas
writer = pandas.ExcelWriter('Masterfile.xlsx')
data_filtered.to_excel(writer, "Main", cols=['Diff1', 'Diff2'])
writer.save()
Masterfile.xlsx にはすでにさまざまなタブが含まれています。ただし、まだ「Main」は含まれていません。
Pandas は「メイン」シートに正しく書き込みますが、残念ながら他のすべてのタブも削除します。
ベストアンサー1
Pandas のドキュメントには、xlsx ファイルには openpyxl が使用されると書かれています。コードにざっと目を通すと、ExcelWriter
次のような方法がうまくいくかもしれないというヒントが得られます。
import pandas
from openpyxl import load_workbook
book = load_workbook('Masterfile.xlsx')
writer = pandas.ExcelWriter('Masterfile.xlsx', engine='openpyxl')
writer.book = book
## ExcelWriter for some reason uses writer.sheets to access the sheet.
## If you leave it empty it will not know that sheet Main is already there
## and will create a new sheet.
writer.sheets = dict((ws.title, ws) for ws in book.worksheets)
data_filtered.to_excel(writer, "Main", cols=['Diff1', 'Diff2'])
writer.save()