【Python數據科學手冊】Pandas——七、合併數據集:Concat和Append操作

七、合併數據集:Concat和Append操作

寫一個構造Dataframe的函數
在這裏插入圖片描述

1.知識回顧: NumPy數組的合併

np.concatenate 函數,axis 參數可以設置合併的座標軸方向
在這裏插入圖片描述

2.通過pd.concat實現簡易合併

Pandas 有一個 pd.concat() 函數與 np.concatenate 語法類似,但是配置參數更多,功能也更強大
pd.concat(objs, axis=0, join='outer', join_axes=None, ignore_index=False, keys=None, levels=None, names=None, verify_integrity=False, sort=None, copy=True)
簡單地合併一維的 Series 或 DataFrame 對象
在這裏插入圖片描述
合併高維數據,相同列方向才能垂直合併,相同行索引才能水平合併
在這裏插入圖片描述
否則橫縱交叉
在這裏插入圖片描述

1)索引重複

pd.concat 在合併時會保留索引,即使索引是重複的
在這裏插入圖片描述
雖然 DataFrame 允許這麼做,但如果結果並不是我們想要的,可以通過以下方法解決:

  • 捕捉索引重複的錯誤 :設置 verify_integrity 參數
    verify_integrity=False是默認的,將它改成True後,索引出現重複就會報錯
    在這裏插入圖片描述
  • 忽略索引,重新設置:設置 ignore_index 參數
    在這裏插入圖片描述
  • 增加多級索引:keys 參數
    在這裏插入圖片描述

2)類似join合併

當存在要合併的Dataframe存在重合的列,可以設置join參數取並集或交集
在這裏插入圖片描述
同樣適用於行
在這裏插入圖片描述
join_axes 參數直接指定保留的行名或列名
在這裏插入圖片描述

3)append()方法

df1.append(df2),效果與pd.concat([df1, df2]) 一樣
在這裏插入圖片描述
Pandas 的 append() 不直接更新原有對象的值
在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章