国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

Python pandas在原有Excel中追加或重寫sheet工作表

這篇具有很好參考價值的文章主要介紹了Python pandas在原有Excel中追加或重寫sheet工作表。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

情景描述

想在excel中添加幾個工作表來保存python得到的同一類型的多個階段數(shù)據(jù)變量,非一次性保存,且是多次打開那種方式。
使用xlwt會覆蓋掉以前的所有數(shù)據(jù)(且是通過遍歷保存),看了好多帖子發(fā)現(xiàn)pandas可以實現(xiàn)我想要的功能,但是沒有很直接的方法可以直接使用,且依然會覆蓋以及報錯等問題,最后發(fā)現(xiàn)pd.ExcelWriter()函數(shù)有個重要的參數(shù)可以直接實現(xiàn)追加工作表的功能。代碼和解釋如下:

自定義追加變量到excel工作表的函數(shù)

// 導(dǎo)包
import os
import numpy as np
import pandas as pd  # 導(dǎo)入模塊
from openpyxl import load_workbook  #之前嘗試用這個包讀取現(xiàn)有的表格,然后再追加,費了時間但是沒搞通
def save_variable(filename,sheetname,variable):  #filename后面記得加上文件的后綴 .xls或者.xlsx
    # 重要的是寫入函數(shù)對象的建立,即if else里的兩種情況
    # 如果文件對象不存在,那么就使用默認的模式,即mode=‘w’,會創(chuàng)建一個新的文件
    if not os.path.exists(filename):
        writer = pd.ExcelWriter(filename, engine='openpyxl')   
    else: # 如果文件對象存在,那么就使用追加模式,設(shè)置if_sheet_exists='overlay',此時需要設(shè)置mode=‘a(chǎn)’ 
        writer = pd.ExcelWriter(filename, engine='openpyxl', mode='a', if_sheet_exists='overlay')
	
	# 后面是保存數(shù)據(jù)相關(guān)的代碼了,
    pd_data = pd.DataFrame(variable)   #將變量轉(zhuǎn)換成df格式
    pd_data.to_excel(writer, sheet_name=sheetname, header=None, index=None)  #不要索引、不要表頭
    writer.save()
    writer.close()
    
if __name__ == '__main__':
    #測試同一個工作表進行重寫
    a1 = np.array([1,1,1])
    a2 = np.array([2,2,2])
    filename = './test1.xlsx'    #當前文件夾下建立文件  后綴xlsx或者xls均可,具體區(qū)別:不知道。
    save_variable(filename,'1',a1)
    save_variable(filename,'1',a2)    #對于只有一行的數(shù)組,寫進去的是一列,有空再摸索....

    #測試添加新表到現(xiàn)有的excel文件之中
    b = np.array([[1, 2, 1], [1, 3, 6]])
    save_variable(filename,'2',b)

上面的代碼可直接復(fù)制運行、修改探索、學(xué)習(xí)…

參考某作者帖子

pandas如何在同一工作簿中保存多個sheet-----pd.ExcelWriter() 這個作者的代碼顯然是無法實現(xiàn)想要的功能,但是也提到了mode參數(shù)。下面那位寫的更深入…

Pandas向本地Excel已存在的工作表追加寫入DataFrame文章來源地址http://www.zghlxwxcb.cn/news/detail-657877.html

到了這里,關(guān)于Python pandas在原有Excel中追加或重寫sheet工作表的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔相關(guān)法律責任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包