要将DataFrame两次写入不同位置的sheet,您可以按照以下步骤进行操作:

  1. 将第一个DataFrame写入指定位置:使用openpyxl的openpyxl.utils.dataframe.dataframe_to_rows()方法将DataFrame转换为行列表,然后使用sheet.append()方法将行列表写入指定位置。
from openpyxl import Workbook
from openpyxl.utils.dataframe import dataframe_to_rows

# 创建工作簿和工作表
wb = Workbook()
sheet = wb.active

# 将第一个DataFrame写入指定位置
dataframe1 = ...  # 第一个DataFrame数据
rows1 = dataframe_to_rows(dataframe1, header=True)
for r_idx, row in enumerate(rows1, 1):
    for c_idx, value in enumerate(row, 1):
        sheet.cell(row=r_idx, column=c_idx, value=value)

# 保存工作簿
wb.save('output.xlsx')
  1. 将第二个DataFrame写入不同位置:使用相同的步骤将第二个DataFrame转换为行列表,然后将行列表写入另一个位置。
# 将第二个DataFrame写入不同位置
dataframe2 = ...  # 第二个DataFrame数据
rows2 = dataframe_to_rows(dataframe2, header=True)
start_row = ...  # 第二个DataFrame的起始行
start_column = ...  # 第二个DataFrame的起始列
for r_idx, row in enumerate(rows2, start=start_row):
    for c_idx, value in enumerate(row, start=start_column):
        sheet.cell(row=r_idx, column=c_idx, value=value)

# 保存工作簿
wb.save('output.xlsx')

请根据您的具体需求修改dataframe1dataframe2start_rowstart_column变量的值,并将结果保存在名为output.xlsx的文件中。

openpyxl将dataframe两次写入sheet的不同位置

原文地址: https://www.cveoy.top/t/topic/i7gZ 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录