python中的join函数连接dataframe_python pandas DataFrame.join用法及代码示例
連接另一個DataFrame的列。
與連接列other索引或鍵列上的DataFrame。通過傳遞一個列表,一次有效地通過索引連接多個DataFrame對象。
參數:
other:DataFrame, Series, 或 list of DataFrame索引應與此列中的一列相似。如果傳遞了Series,則必須設置其name屬性,并將其用作結果聯接的DataFrame中的列名稱。
on:str, list of str, 或 array-like, 可選參數調用方中要加入索引的列或索引級別名稱other,否則加入index-on-index。如果給出多個值,則otherDataFrame必須具有MultiIndex。如果調用DataFrame中尚未包含數組,則可以將其作為連接鍵傳遞。就像Excel的VLOOKUP操作一樣。
how:{‘left’, ‘right’, ‘outer’, ‘inner’}, 默認為 ‘left’如何處理兩個對象的操作。
左:使用調用框架的索引(如果指定了列,則為列)
右:使用other的索引。
external:與調用框架的索引(如果指定為on,則為列)的形式聯合other的索引,然后對其進行排序。從字典上看。
inner:與調用框架的索引(或列,如果指定為on)形成交集,other的索引,保留調用順序。
lsuffix:str, 默認為 ‘’在左框架的重疊列中使用的后綴。
rsuffix:str, 默認為 ‘’在右框架的重疊列中使用的后綴。
sort:bool, 默認為 False通過聯接關鍵字按字典順序對結果DataFrame進行排序。如果為False,則聯接鍵的順序取決于聯接類型(how關鍵字)。
返回值:
DataFrame包含來自調用方和調用方的列的 DataFrame other。
注意:
參數on, lsuffix和rsuffix傳遞列表時不支持DataFrame對象。
支持將索引級別指定為on參數已在0.23.0版本中添加。
例子:
>>> df = pd.DataFrame({'key': ['K0', 'K1', 'K2', 'K3', 'K4', 'K5'],
... 'A': ['A0', 'A1', 'A2', 'A3', 'A4', 'A5']})
>>> df
key A
0 K0 A0
1 K1 A1
2 K2 A2
3 K3 A3
4 K4 A4
5 K5 A5
>>> other = pd.DataFrame({'key': ['K0', 'K1', 'K2'],
... 'B': ['B0', 'B1', 'B2']})
>>> other
key B
0 K0 B0
1 K1 B1
2 K2 B2
使用其索引加入DataFrames。
>>> df.join(other, lsuffix='_caller', rsuffix='_other')
key_caller A key_other B
0 K0 A0 K0 B0
1 K1 A1 K1 B1
2 K2 A2 K2 B2
3 K3 A3 NaN NaN
4 K4 A4 NaN NaN
5 K5 A5 NaN NaN
如果要使用鍵列進行聯接,則需要將鍵設置為兩個鍵的索引df和other。加入的DataFrame將以key作為其索引。
>>> df.set_index('key').join(other.set_index('key'))
A B
key
K0 A0 B0
K1 A1 B1
K2 A2 B2
K3 A3 NaN
K4 A4 NaN
K5 A5 NaN
使用鍵列進行連接的另一種方法是使用on參數。 DataFrame.join始終使用other的索引,但我們可以在其中使用任何列df。此方法在結果中保留原始DataFrame的索引。
>>> df.join(other.set_index('key'), on='key')
key A B
0 K0 A0 B0
1 K1 A1 B1
2 K2 A2 B2
3 K3 A3 NaN
4 K4 A4 NaN
5 K5 A5 NaN
總結
以上是生活随笔為你收集整理的python中的join函数连接dataframe_python pandas DataFrame.join用法及代码示例的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 66319d电源使用说明书_海尔洗衣机怎
- 下一篇: server sql 判断是否是当天_判