2

我想将数据从数据框导出到 excel,它已经有它的格式布局(颜色、单元格等)

此代码覆盖所有工作表,而不是我希望在不更改 Excel 布局的情况下导出数据。

那可能吗?

使用 XlsxWriter 作为引擎创建 Pandas Excel 编写器。

writer = pd.ExcelWriter('C:/pandas_positioning.xlsx', engine='xlsxwriter')


df.to_excel(writer, sheet_name='my_data',
         startrow=7, startcol=4, header=False, index=False)

关闭 Pandas Excel 编写器并输出 Excel 文件。

writer.save()
4

1 回答 1

1

手动进行。

例子:

WB = 'C:/pandas_positioning.xlsx'
WS = 'my_data'

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

wb = openpyxl.load_workbook(WB)
wb.create_sheet(WS)
writer.book = wb
writer.sheets = {x.title: x for x in wb.worksheets}

ws = writer.sheets[WS]

for icol, col_name in zip(range(len(df.columns)+1), df.columns):
    ws.cell(1, icol+2, col_name)

for irow, row_name in zip(range(len(df.columns)+1), df.index):
    ws.cell(irow+2, 1, row_name)

for (_, row), icol in zip(df.iterrows(), range(len(df.index) + 1)):
    for (_, cell), c in zip(row.iteritems(), range(len(df.columns) + 1)):
        ws.cell(icol+2, c+2).value = cell

writer.save()
于 2019-01-09T23:27:16.920 回答