python-pandas兩個相同格式的excel對比輸出不同內容


近期項目需要,場景是有兩個excel表格,一個是之前的舊表格,一個是新內容的表格,需要將兩個不同的提取出來生成新的excel。

python使用到的是pandas這個庫,前提是需要安裝python,和自己熟悉的開發工具。

def drop_duplicates(usedExcel, newExcel, outputExcel):
    df1 = pd.read_excel(usedExcel)
    df2 = pd.read_excel(newExcel)
    c = df1.append(df2)
    c.drop_duplicates(keep=False, inplace=True)
    print(c)
    df = pd.DataFrame(c)
    df.to_excel(outputExcel, index=False)

寫了一個工具函數,需要有兩個三個參數第一個是舊的excel表格的絕對路徑,第二個是新的excel表格的絕對路徑,第三個是需要輸出excel表格的絕對路徑,

思路:先讀取兩個表格的內容,讀取到的類型是DataFrame,然后使用pandas自帶的.append()函數合並兩個表格數據,再去除重復值,將去除完成的輸出到指定excel

.append()中是將'()'里面的追加到‘.’前面。

.drop_duplicate方法是對DataFrame格式的數據,去除特定列下面的重復行,返回DataFrame格式的數據。

其中.drop_duplicate()有三個參數

subset : column label or sequence of labels, optional
用來指定特定的列,默認所有列
keep : {‘first’, ‘last’, False}, default ‘first’
刪除重復項並保留第一次出現的項
inplace : boolean, default False
是直接在原來數據上修改還是保留一個副本

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM