当前位置: 首页 > 图灵资讯 > 行业资讯> python merge()的连接

python merge()的连接

来源:图灵python
时间: 2024-07-16 09:49:50

1、说明

pandas提供了一个类似关系数据库的连接(join)merage可以根据一个或多个键连接不同DataFrame中的行。

2、语法

merge(left,right,how='inner',on=None,left_on=None,right_on=None,
left_index=False,right_index=False,sort=True,
suffixes=('_x','_y'),copy=True,indicator=False)

3、参数

left与right:两个不同的DataFrame

how:Innner(内连接)是指合并(连接)的方式,left(左外连接),right(右外连接),outer(全外连接);默认为inner

on : 指用于连接的列索引名称。右右两个DataFrame对象中必须存在。如果没有指定,其他参数也没有指定,则以两个DataFrame的列名交集作为连接键

left_on:左则DataFrame中用作连接键的列名;左右列名在这个参数中不同,但代表相同的含义是非常有用的。

right_on:在DataFrame中使用右侧 连接键的列名

left_index:使用左则DataFrame中的行索引作为连接键

right_index:使用右则DataFrame中的行索引作为连接键

sort:默认为True,对合并的数据进行排序。在大多数情况下,False可以提高性能

suffixes:由字符串值组成的元组,用于指定当左右DataFrame有相同列名时,在列名后面附加的后缀名称,默认为(_x’,’_y’)

copy:默认情况下,True总是将数据复制到数据结构中;在大多数情况下,False可以提高性能;

indicator:在 0.17.0中还增加了显示合并数据中的来源;如果你只来自左边(left_only)、两者(both)

4、实例

importpandasaspd

left=pd.DataFrame({'key':['K0','K1','K2','K3'],
'A':['A0','A1','A2','A3'],
'B':['B0','B1','B2','B3']})
right=pd.DataFrame({'key':['K0','K1','K2','K3'],
'C':['C0','C1','C2','C3'],
'D':['D0','D1','D2','D3']})
result=pd.merge(left,right,on='key')

#on参数传递的key作为连接键
result
Out[4]:
ABkeyCD
0A0B0K0C0D0
1A1B1K1C1D1
2A2B2K2C2D2
3A3B3K3C3D3

以上是python merge()连接,希望对大家有所帮助。更多Python学习指导:python基础教程