[英]Fill in pd data frame into existing excel sheet (using openpyxl v2.3.2)
我想將一些pandas數據幀填入現有的 excel文件中。 我按照以下說明操作: 如何寫入現有的excel文件而不覆蓋數據(使用pandas)? 使用:
from openpyxl import load_workbook
import pandas as pd
import numpy as np
book=load_workbook("excel_proc.xlsx")
writer=pd.ExcelWriter("excel_proc.xlsx", engine="openpyxl")
writer.book = book
writer.sheets = dict((ws.title, ws) for ws in book.worksheets)
data_df.to_excel(writer, sheet_name="example", startrow=100, startcol=5, index=False)
writer.save()
但是,將刪除現有工作表,生成“示例”工作表,並且僅在定義的位置集成df。 我做錯了什么? 我希望將“data_df”寫入現有“示例”表中的現有excel文件中,保留其他表和數據。
謝謝
示例df:
data_df=pd.DataFrame(np.arange(12).reshape((2, 6)), index=["Time","Value"])
我自己解決了這個問題。 我意識到即使load_workbook也無法加載我的文件。 因此,我更新了openpyxl包 (conda install openpyxl)。 不起作用的版本是:v2.3.2 (python 35)。 現在運行的版本是:v2.4.0。
我真的不知道,如果這是最后的原因。 但是現在excels被填充在定義的位置並且數據被保留。
您可能對學習xlwings感興趣,這使得使用python中的excel文件變得更加容易。
在任何情況下,我都會先閱讀工作表中的現有數據,在python中按照您的意願組合數據,最后覆蓋工作表。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.