使用 Pandas 写入特定的 range/Column

Writing to a specific range/Column with Pandas

我试图通过 Pandas 数据框从工作簿 1 的列范围 AP:AR 复制到工作簿 2 的范围 A:C

我已经成功读取工作簿1中下面的数据框,然后我想将其写入指定范围的工作簿2。所以 AP:AR to AQ:AS.

我试过:

#df.to_excel(writer, 'AP')

我也试过以下方法:

 #df = pd.write_excel(filename, skiprows = 2, parse_cols = 'AP:AR')
pd.writer = pd.ExcelWriter('output.xlsx', columns = 'AP:AR')
pd.writer.save()

例如:

filename ='C:/ workbook 1.xlsx'
df = pd.read_excel(filename, skiprows = 2, parse_cols = 'A:C')

import pandas as pd
writer = pd.ExcelWriter('C:/DRAX/ workbook 2.xlsx')
df.to_excel(writer, 'AQ')
writer.save()
print(df)

它读取正确,但写入单元格列“B”而不是 AQ。

您必须使用参数 startcol 指定要写入数据帧的 starting column,该参数是从 0:

开始的整数

所以你应该换行

df.to_excel(writer, 'AQ')

df.to_excel(writer, startcol=42) # AQ has the index of 42

结果: