[英]How to write a specific column from Pandas DataFrame to Excel without overwriting other columns?
我有一个 Excel 输入文件,其中一列一开始是空的。 然后,基于输入的 rest ,我正在计算d_eff
,我希望它回到同一个输入文件中。 因为其他列中有公式,所以我不想覆盖那些。
例如,这是开头的文件:
d_eff | d1 | d2 | 查看 |
---|---|---|---|
1 | 2 | d_eff = d1+d2? | |
5 | 6 | d_eff = d1+d2? |
然后我想用我的脚本填充 d_eff ,而不会覆盖check
列中的公式。
我正在使用 Pandas,因此输入文件位于 DataFrame df
中。
这是我得到的最接近的:
with pd.ExcelWriter(filename, engine='openpyxl', mode='a') as writer:
df.d_eff.to_excel(writer, sheet_name='Sheet1')
但在这种情况下,它将d_eff
放在 Sheet11 而不是 Sheet1 上。
如何将d_eff
放在现有位置的 Excel 文件中,而不覆盖其他列中的公式?
一旦将工作簿名称和 sheet_name 分配给编写器 object。 它应该能够将数据 append 到现有工作表而不覆盖其他工作表。
with pd.ExcelWriter(filename, engine='openpyxl', mode='a') as writer:
book = openpyxl.load_workbook(filename)
writer.book = book
writer.sheets = dict((ws.title, ws) for ws in book.worksheets)
df.d_eff.to_excel(writer, sheet_name='Sheet1', startcol=0, index=False)
writer.save()
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.