Pandas merge合并兩個(gè)DataFram的實(shí)現(xiàn)
Pandas merge
pandas.merge()是pandas庫(kù)中用于合并兩個(gè)或多個(gè)DataFrame對(duì)象的函數(shù),其常用的參數(shù)有以下幾個(gè):
- left:要合并的左側(cè)DataFrame。
- right:要合并的右側(cè)DataFrame。
- how:指定合并方式,包括‘left’、‘right’、‘outer’和‘inner’四種。
- on:指定按照哪些列進(jìn)行合并,可以是單個(gè)列名或包含多個(gè)列名的列表。
- left_on和right_on:指定左側(cè)和右側(cè)DataFrame中進(jìn)行合并的列名,如果兩個(gè)DataFrame中的列名不同,需要通過(guò)這兩個(gè)參數(shù)指定。
- suffixes:指定當(dāng)兩個(gè)DataFrame中有相同列名時(shí),為區(qū)分而添加的后綴。
示例代碼
import pandas as pd
# 創(chuàng)建兩個(gè)DataFrame
df1 = pd.DataFrame({'key': ['A', 'B', 'C', 'D'], 'value': [1, 2, 3, 4]})
df2 = pd.DataFrame({'key': ['B', 'D', 'E', 'F'], 'value': [5, 6, 7, 8]})
# 通過(guò)key列合并兩個(gè)DataFrame
merged = pd.merge(df1, df2, on='key')
print(merged)運(yùn)行結(jié)果:
key value_x value_y
0 B 2 5
1 D 4 6
在這個(gè)例子中,創(chuàng)建了兩個(gè)DataFrame對(duì)象df1和df2,它們都有一個(gè)名為’key’的列。使用pd.merge()函數(shù)將這兩個(gè)DataFrame對(duì)象按照’key’列進(jìn)行合并,并將結(jié)果存儲(chǔ)在merged變量中。最后,輸出了合并后的結(jié)果,其中value_x和value_y分別代表合并前的df1和df2中的’value’列。
保留左邊的DataFram
如果只想考慮左側(cè)的DataFrame對(duì)象,在pandas.merge()函數(shù)中可以設(shè)置how=‘left’參數(shù)來(lái)實(shí)現(xiàn)。具體來(lái)說(shuō),how參數(shù)控制了兩個(gè)DataFrame對(duì)象之間的合并方式,可以取值為’left’、‘right’、‘outer’和’inner’。當(dāng)取值為’left’時(shí),pandas.merge()函數(shù)會(huì)將左側(cè)DataFrame對(duì)象中所有的行保留,并在合并后的DataFrame對(duì)象中添加右側(cè)DataFrame對(duì)象中能夠和左側(cè)DataFrame對(duì)象匹配的行。
下面是一個(gè)示例代碼:
import pandas as pd
# 創(chuàng)建兩個(gè)DataFrame
df1 = pd.DataFrame({'key': ['A', 'B', 'C', 'D'], 'value': [1, 2, 3, 4]})
df2 = pd.DataFrame({'key': ['B', 'D', 'E', 'F'], 'value': [5, 6, 7, 8]})
# 只考慮左側(cè)的DataFrame對(duì)象
merged = pd.merge(df1, df2, on='key', how='left')
print(merged)運(yùn)行結(jié)果:
key value_x value_y
0 A 1 NaN
1 B 2 5.0
2 C 3 NaN
3 D 4 6.0
在這個(gè)例子中,將df1和df2按照’key’列進(jìn)行合并,并將合并方式設(shè)置為’left’。合并結(jié)果中包含了df1中所有的行,因?yàn)橹豢紤]左側(cè)的DataFrame對(duì)象。右側(cè)的DataFrame對(duì)象中’key’列為’E’和’F’的行在合并后的DataFrame對(duì)象中的’value_y’列都是NaN。
到此這篇關(guān)于Pandas merge合并兩個(gè)DataFram的實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)Pandas merge合并兩個(gè)DataFram內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- pandas數(shù)據(jù)合并與重塑之merge詳解
- Pandas數(shù)據(jù)集的合并與連接merge()方法
- Python?pandas數(shù)據(jù)合并merge函數(shù)用法詳解
- Python?Pandas數(shù)據(jù)合并pd.merge用法詳解
- pandas中DataFrame數(shù)據(jù)合并連接(merge、join、concat)
- Pandas 連接合并函數(shù)merge()詳解
- 在Pandas中DataFrame數(shù)據(jù)合并,連接(concat,merge,join)的實(shí)例
- Pandas merge合并操作的實(shí)現(xiàn)
相關(guān)文章
利用python將xml文件解析成html文件的實(shí)現(xiàn)方法
下面小編就為大家分享一篇利用python將xml文件解析成html文件的實(shí)現(xiàn)方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2017-12-12
Python視頻剪輯合并操作的實(shí)現(xiàn)示例
很多人在創(chuàng)作視頻時(shí)都需要進(jìn)行剪輯,本文主要介紹了Python視頻剪輯合并操作的實(shí)現(xiàn)示例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2025-01-01
Python for Informatics 第11章 正則表達(dá)式(一)
這篇文章主要介紹了Python for Informatics 第11章 正則表達(dá)式(一)的相關(guān)資料,需要的朋友可以參考下2016-04-04
Python設(shè)計(jì)模式之享元模式原理與用法實(shí)例分析
這篇文章主要介紹了Python設(shè)計(jì)模式之享元模式原理與用法,結(jié)合實(shí)例形式較為詳細(xì)的分析了享元模式的相關(guān)概念、原理、定義及使用方法,需要的朋友可以參考下2019-01-01
PYTHON如何讀取和寫(xiě)入EXCEL里面的數(shù)據(jù)
這篇文章主要介紹了PYTHON如何讀取和寫(xiě)入EXCEL里面的數(shù)據(jù),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-10-10
Python根據(jù)給定模型進(jìn)行特征權(quán)值計(jì)算
在機(jī)器學(xué)習(xí)中,特征權(quán)重的計(jì)算是理解模型如何做出預(yù)測(cè)的重要步驟,本文將詳細(xì)介紹如何使用Python根據(jù)給定模型計(jì)算特征權(quán)重,希望對(duì)大家有一定的幫助2024-11-11

