欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python Pandas中合并數(shù)據(jù)的5個函數(shù)使用詳解

 更新時間:2022年05月07日 10:35:47   作者:黃偉呢  
數(shù)據(jù)合并是數(shù)據(jù)處理過程中的必經(jīng)環(huán)節(jié),pandas作為數(shù)據(jù)分析的利器,提供了五種常用的數(shù)據(jù)合并方式,讓我們看看如何使用這些方法吧!

前幾天在一個群里面,看到一位朋友,說到自己的阿里面試,被問了一些關(guān)于pandas的使用。其中一個問題是:pandas中合并數(shù)據(jù)的5中方法

今天借著這個機會,就為大家盤點一下pandas中合并數(shù)據(jù)的5個函數(shù)。但是對于每個函數(shù),我這里不打算詳細(xì)說明,具體用法大家可以參考pandas官當(dāng)文檔。

  • join主要用于基于索引的橫向合并拼接;
  • merge主要用于基于指定列的橫向合并拼接;
  • concat可用于橫向和縱向合并拼接;
  • append主要用于縱向追加;
  • combine可以通過使用函數(shù),把兩個DataFrame按列進行組合。

join

join是基于索引的橫向拼接,如果索引一致,直接橫向拼接。如果索引不一致,則會用Nan值填充。

索引一致

x = pd.DataFrame({'A': ['A0', 'A1', 'A2'],
                     'B': ['B0', 'B1', 'B2']},
                    index=[0, 1, 2])
y = pd.DataFrame({'C': ['C0', 'C2', 'C3'],
                      'D': ['D0', 'D2', 'D3']},
                    index=[0, 1, 2])
x.join(y)

結(jié)果如下:

圖片

索引不一致

x = pd.DataFrame({'A': ['A0', 'A1', 'A2'],
                     'B': ['B0', 'B1', 'B2']},
                    index=[0, 1, 2])
y = pd.DataFrame({'C': ['C0', 'C2', 'C3'],
                      'D': ['D0', 'D2', 'D3']},
                    index=[1, 2, 3])
x.join(y)

結(jié)果如下:

圖片

merge

merge是基于指定列的橫向拼接,該函數(shù)類似于關(guān)系型數(shù)據(jù)庫的連接方式,可以根據(jù)一個或多個鍵將不同的DatFrame連接起來。該函數(shù)的典型應(yīng)用場景是,針對同一個主鍵存在兩張不同字段的表,根據(jù)主鍵整合到一張表里面。

可以指定不同的how參數(shù),表示連接方式,有inner內(nèi)連、left左連、right右連、outer全連,默認(rèn)為inner;

x = pd.DataFrame({'姓名': ['張三', '李四', '王五'],
                     '班級': ['一班', '二班', '三班']})
y = pd.DataFrame({'專業(yè)': ['統(tǒng)計學(xué)', '計算機', '繪畫'],
                      '班級': ['一班', '三班', '四班']})

pd.merge(x,y,how="left")

結(jié)果如下:

圖片

concat

concat函數(shù)既可以用于橫向拼接,也可以用于縱向拼接。

縱向拼接

x = pd.DataFrame([['Jack','M',40],['Tony','M',20]], columns=['name','gender','age'])
y = pd.DataFrame([['Mary','F',30],['Bob','M',25]], columns=['name','gender','age'])
z = pd.concat([x,y],axis=0)
z

結(jié)果如下:

圖片

橫向拼接

x = pd.DataFrame({'姓名': ['張三', '李四', '王五'],
                     '班級': ['一班', '二班', '三班']})
y = pd.DataFrame({'專業(yè)': ['統(tǒng)計學(xué)', '計算機', '繪畫'],
                      '班級': ['一班', '三班', '四班']})
z = pd.concat([x,y],axis=1)
z

結(jié)果如下:

圖片

append

append主要用于縱向追加數(shù)據(jù)。

x = pd.DataFrame([['Jack','M',40],['Tony','M',20]], columns=['name','gender','age'])
y = pd.DataFrame([['Mary','F',30],['Bob','M',25]], columns=['name','gender','age'])
x.append(y)

結(jié)果如下:

圖片

combine

conbine可以通過使用函數(shù),把兩個DataFrame按列進行組合。

x = pd.DataFrame({"A":[3,4],"B":[1,4]})
y = pd.DataFrame({"A":[1,2],"B":[5,6]})
x.combine(y,lambda a,b:np.where(a>b,a,b))

結(jié)果如下:

圖片

注:上述函數(shù),用于返回對應(yīng)位置上的最大值。

到此這篇關(guān)于Python Pandas中合并數(shù)據(jù)的5個函數(shù)使用詳解的文章就介紹到這了,更多相關(guān)Python Pandas合并數(shù)據(jù)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python稀疏矩陣及參數(shù)保存代碼實現(xiàn)

    Python稀疏矩陣及參數(shù)保存代碼實現(xiàn)

    這篇文章主要介紹了Python稀疏矩陣及參數(shù)保存代碼實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-04-04
  • 淺析Windows 嵌入python解釋器的過程

    淺析Windows 嵌入python解釋器的過程

    這篇文章主要介紹了Windows 嵌入python解釋器的過程,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-07-07
  • 使用python寫的opencv實時監(jiān)測和解析二維碼和條形碼

    使用python寫的opencv實時監(jiān)測和解析二維碼和條形碼

    這篇文章主要介紹了使用python寫的opencv實時監(jiān)測和解析二維碼和條形碼,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下
    2019-08-08
  • tensorflow2.0教程之Keras快速入門

    tensorflow2.0教程之Keras快速入門

    這篇文章主要介紹了tensorflow2.0教程之Keras快速入門,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-02-02
  • selenium設(shè)置瀏覽器為headless無頭模式(Chrome和Firefox)

    selenium設(shè)置瀏覽器為headless無頭模式(Chrome和Firefox)

    這篇文章主要介紹了selenium設(shè)置瀏覽器為headless無頭模式(Chrome和Firefox),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-01-01
  • Python實現(xiàn)的多項式擬合功能示例【基于matplotlib】

    Python實現(xiàn)的多項式擬合功能示例【基于matplotlib】

    這篇文章主要介紹了Python實現(xiàn)的多項式擬合功能,結(jié)合實例形式分析了Python基于matplotlib模塊進行數(shù)值運算與圖形繪制相關(guān)操作技巧,需要的朋友可以參考下
    2018-05-05
  • Python數(shù)據(jù)可視化之用Matplotlib繪制常用圖形

    Python數(shù)據(jù)可視化之用Matplotlib繪制常用圖形

    Matplotlib能夠繪制折線圖、散點圖、柱狀圖、直方圖、餅圖. 我們需要知道不同的統(tǒng)計圖的意義,以此來決定選擇哪種統(tǒng)計圖來呈現(xiàn)我們的數(shù)據(jù),今天就帶大家詳細(xì)了解如何繪制這些常用圖形,需要的朋友可以參考下
    2021-06-06
  • 解決keras使用cov1D函數(shù)的輸入問題

    解決keras使用cov1D函數(shù)的輸入問題

    這篇文章主要介紹了解決keras使用cov1D函數(shù)的輸入問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-06-06
  • Python實現(xiàn)簡單圖像縮放與旋轉(zhuǎn)

    Python實現(xiàn)簡單圖像縮放與旋轉(zhuǎn)

    大家好,本篇文章主要講的是Python實現(xiàn)簡單圖像縮放與旋轉(zhuǎn),感興趣的同學(xué)趕快來看一看吧,對你有幫助的話記得收藏一下
    2022-01-01
  • python去除空格和換行符的實現(xiàn)方法(推薦)

    python去除空格和換行符的實現(xiàn)方法(推薦)

    下面小編就為大家?guī)硪黄猵ython去除空格和換行符的實現(xiàn)方法(推薦)。小編覺得挺不錯的,現(xiàn)在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2017-01-01

最新評論