參數(shù) | 說明 |
---|---|
how | 默認(rèn)為inner,可設(shè)為inner/outer/left/right |
on | 根據(jù)某個(gè)字段進(jìn)行連接,必須存在于兩個(gè)DateFrame中(若未同時(shí)存在,則需要分別使用left_on和right_on來設(shè)置) |
left_on | 左連接,以DataFrame1中用作連接鍵的列 |
right_on | 右連接,以DataFrame2中用作連接鍵的列 |
left_index | 將DataFrame1行索引用作連接鍵 |
right_index | 將DataFrame2行索引用作連接鍵 |
sort | 根據(jù)連接鍵對合并后的數(shù)據(jù)進(jìn)行排列,默認(rèn)為True |
suffixes | 對兩個(gè)數(shù)據(jù)集中出現(xiàn)的重復(fù)列,新數(shù)據(jù)集中加上后綴_x,_y進(jìn)行區(qū)別 |
#利用字典dict創(chuàng)建數(shù)據(jù)框 dataDf1=pd.DataFrame({'lkey':['foo','bar','baz','foo'], 'value':[1,2,3,4]}) dataDf2=pd.DataFrame({'rkey':['foo','bar','qux','bar'], 'value':[5,6,7,8]}) print(dataDf1) print(dataDf2) >>> lkey value 0 foo 1 1 bar 2 2 baz 3 3 foo 4 rkey value 0 foo 5 1 bar 6 2 qux 7 3 bar 8
#inner鏈接 dataLfDf=dataDf1.merge(dataDf2, left_on='lkey',right_on='rkey') >>> lkey value_x rkey value_y 0 foo 1 foo 5 1 foo 4 foo 5 2 bar 2 bar 6 3 bar 2 bar 8
#Right鏈接 dataDf1.merge(dataDf2, left_on='lkey', right_on='rkey',how='right') >>> lkey value_x rkey value_y 0 foo 1.0 foo 5 1 foo 4.0 foo 5 2 bar 2.0 bar 6 3 bar 2.0 bar 8 4 NaN NaN qux 7
#Outer鏈接 dataDf1.merge(dataDf2, left_on='lkey', right_on='rkey', how='outer') >>> lkey value_x rkey value_y 0 foo 1.0 foo 5.0 1 foo 4.0 foo 5.0 2 bar 2.0 bar 6.0 3 bar 2.0 bar 8.0 4 baz 3.0 NaN NaN 5 NaN NaN qux 7.0
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教。
標(biāo)簽:呼和浩特 股票 湖州 衡水 畢節(jié) 中山 駐馬店 江蘇
巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《Pandas 連接合并函數(shù)merge()詳解》,本文關(guān)鍵詞 Pandas,連接,合并,函數(shù),merge,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。