这篇教程Pandas 连接合并函数merge()详解写得很实用,希望能帮到您。 一、merge函数用途pandas中的merge()函数类似于SQL中join的用法,可以将不同数据集依照某些字段(属性)进行合并操作,得到一个新的数据集。 二、merge()函数的具体参数用法: DataFrame1.merge(DataFrame2, how=‘inner', on=None, left_on=None, right_on=None, left_index=False, right_index=False, sort=False, suffixes=('_x', ‘_y')) 参数说明 参数 | 说明 | how | 默认为inner,可设为inner/outer/left/right | on | 根据某个字段进行连接,必须存在于两个DateFrame中(若未同时存在,则需要分别使用left_on和right_on来设置) | left_on | 左连接,以DataFrame1中用作连接键的列 | right_on | 右连接,以DataFrame2中用作连接键的列 | left_index | 将DataFrame1行索引用作连接键 | right_index | 将DataFrame2行索引用作连接键 | sort | 根据连接键对合并后的数据进行排列,默认为True | suffixes | 对两个数据集中出现的重复列,新数据集中加上后缀_x,_y进行区别 | 三、merge用法举例创建两个数据框#利用字典dict创建数据框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 value0 foo 11 bar 22 baz 33 foo 4 rkey value0 foo 51 bar 62 qux 73 bar 8 内连接(Inner)#inner链接dataLfDf=dataDf1.merge(dataDf2, left_on='lkey',right_on='rkey')>>> lkey value_x rkey value_y0 foo 1 foo 51 foo 4 foo 52 bar 2 bar 63 bar 2 bar 8 右链接(Right)#Right链接dataDf1.merge(dataDf2, left_on='lkey', right_on='rkey',how='right')>>> lkey value_x rkey value_y0 foo 1.0 foo 51 foo 4.0 foo 52 bar 2.0 bar 63 bar 2.0 bar 84 NaN NaN qux 7 全链接(Outer)#Outer链接dataDf1.merge(dataDf2, left_on='lkey', right_on='rkey', how='outer')>>> lkey value_x rkey value_y0 foo 1.0 foo 5.01 foo 4.0 foo 5.02 bar 2.0 bar 6.03 bar 2.0 bar 8.04 baz 3.0 NaN NaN5 NaN NaN qux 7.0 以上为个人经验,希望能给大家一个参考,也希望大家多多支持51zixue.net。如有错误或未考虑完全的地方,望不吝赐教。 PyQt5 QLineEdit输入的子网字符串校验QRegExp实现 PyQt5实现QLineEdit正则表达式输入验证器 |