版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
Pandas向本地Excel已存在的工作表追加寫(xiě)入DataFrame示例:本地存在一個(gè)Excel文件如下,下面我們希望將一個(gè)DataFrame寫(xiě)入到已存在數(shù)據(jù)的工作表中,并保留原始數(shù)據(jù)。如果我們想直接通過(guò)pandas的api實(shí)現(xiàn)幾乎是不可能的,因?yàn)楣俜轿臋nto_excel方法明確說(shuō)了:Onceaworkbookhasbeensaveditisnotpossiblewritefurtherdatawithoutrewritingthewholeworkbook.但我個(gè)人在研究了pandas的Excel寫(xiě)出源碼后,有了很簡(jiǎn)單的直接使用pandas向工作表追加數(shù)據(jù)的方法,后續(xù)再演示。測(cè)試數(shù)據(jù):importpandasaspddf=pd.DataFrame([[1,2,3],[4,5,6],[7,8,9]],columns=['A','B','C'])openpyxl向工作表追加Pandas數(shù)據(jù)下面我們首先看看,直接用openpyxl如何實(shí)現(xiàn),完整代碼如下:fromopenpyxlimportload_workbookbook=load_workbook("first.xlsx")sheet=book.activeaddress="G8"start_row,start_col=sheet[address].row-1,sheet[address].column-1forj,vinenumerate(df.columns,1):sheet.cell(start_row+1,start_col+j).value=vfori,rowinenumerate(df.values,2):forj,vinenumerate(row,1):sheet.cell(start_row+i,start_col+j).value=vbook.save("test.xlsx")結(jié)果如下,成功向G8單元格寫(xiě)入數(shù)據(jù):xlwings向工作表追加Pandas數(shù)據(jù)如果我們windows系統(tǒng)本地有安裝office或目前版本的wps,就可以通過(guò)xlwings向工作表追加Pandas數(shù)據(jù),完整代碼如下:importxlwingsasxwapp=xw.App(add_book=False)wb=app.books.open("first.xlsx")sht=wb.sheets.activesht.range('G8').options(index=False).value=dfwb.save("test.xlsx")app.quit()實(shí)現(xiàn)了與上述openpyxl代碼一樣的效果,save方法與openpyxl也一樣,不傳參數(shù)則覆蓋原始文件。options參數(shù)可以設(shè)置DataFrame的寫(xiě)出形式,與to_excel的參數(shù)幾乎一致。Pandas直接向工作表追加數(shù)據(jù)最終完整代碼如下(在pandas1.2.4版本測(cè)試成功):writer=pd.ExcelWriter("first.xlsx",engine='openpyxl',mode='a')writer.sheets.update({sht.title:shtforshtinwriter.book.worksheets})df.to_excel(writer,sheet_name=writer.book.active.title,index=False,startrow=7,startcol=6)writer.close()上述代碼會(huì)向Excel表中的激活的工作表追加參數(shù),sheet_name參數(shù)也可以指定向哪個(gè)工作表追加寫(xiě)對(duì)應(yīng)的字符串。在1.4.0以上版本使用如下代碼即可:writer=pd.ExcelWriter("first.xlsx",engine='openpyxl',mode='a',if_sheet_exists="overlay")df.to_excel(writer,sheet_name=writer.book.active.title,index=False,startrow=7,startcol=6)writer.close()默認(rèn)情況下pandas無(wú)法向Excel工作表追加數(shù)據(jù)的根本原因在于沒(méi)有任何讀取原本工作表的動(dòng)作,根據(jù)源碼可以看到永遠(yuǎn)都會(huì)新建工作表(Pandas1.2.x以下版本的情況):這樣我們只需要讓sheets獲取到已存在的工作表信息即可。但是我在1.3.5版本中運(yùn)行以上代碼卻報(bào)出如下錯(cuò)誤:這是因?yàn)閺?.3.0版本開(kāi)始,pd.ExcelWriter增加了if_sheet_exists選項(xiàng):上述我實(shí)現(xiàn)的功能在1.4.0以上版本已經(jīng)實(shí)現(xiàn),使用如下代碼即可:writer=pd.ExcelWriter("first.xlsx",engine='openpyxl',mode='a',if_sheet_exists="overlay")df.to_excel(writer,sheet_name=writer.book.active.title,index=False,startrow=7,startcol=6)writer.close()但是目前阿里云還沒(méi)有同步1.4.X版本的pip源,我目前還只能通過(guò)阿里云升級(jí)到1.3.5的版本。為了提前嘗鮮,我修改了如下源碼:首先在pa
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 養(yǎng)老院環(huán)境衛(wèi)生管理制度
- 主題班會(huì)課件:憤怒情緒的調(diào)控
- 《用法律保護(hù)自己》課件
- 《OGNL與標(biāo)簽庫(kù)》課件
- 教育局聘任小學(xué)校長(zhǎng)協(xié)議書(shū)(2篇)
- 2024年版財(cái)產(chǎn)分割協(xié)議:離婚雙方適用2篇
- 2024年度塔吊司機(jī)承包勞務(wù)合作協(xié)議書(shū)3篇
- 2024年版標(biāo)準(zhǔn)化建筑工程協(xié)議范本版
- 2025年陽(yáng)泉道路運(yùn)輸從業(yè)人員資格考試內(nèi)容有哪些
- 2025年拉薩貨運(yùn)從業(yè)資格證模擬考試保過(guò)版
- 金葡萄石分級(jí)編制說(shuō)明
- 會(huì)計(jì)師事務(wù)所的年度工作總結(jié)
- 六年級(jí)數(shù)學(xué)上冊(cè)期末考試題(A4打印版)
- 2024年中考作文十二大高頻熱點(diǎn)主題9-家國(guó)情懷(素材)
- 中國(guó)裝備智慧樹(shù)知到期末考試答案章節(jié)答案2024年上海電機(jī)學(xué)院
- 2022-2023學(xué)年山東省菏澤市單縣人教PEP版四年級(jí)上冊(cè)期末考試英語(yǔ)試卷
- 停車(chē)場(chǎng)管理系統(tǒng)之車(chē)位引導(dǎo)系統(tǒng)設(shè)計(jì)-畢業(yè)設(shè)計(jì)論文
- 多圖中華民族共同體概論課件第十三講先鋒隊(duì)與中華民族獨(dú)立解放(1919-1949)根據(jù)高等教育出版社教材制作
- 當(dāng)死亡化作生命
- 第17課 第二次世界大戰(zhàn)與戰(zhàn)后國(guó)際秩序的形成說(shuō)課課件-2023-2024學(xué)年統(tǒng)編版(2019)高中歷史必修中外歷史綱要下冊(cè)
- 附近有吃飯地方嗎
評(píng)論
0/150
提交評(píng)論