Pandas(杂):表格的各种连接方式join
在pd.merge(); df.join(); gpd.sjoin()
等函数中会用到,只有存在共同字段的列才能连接。否则拼接应该采用pd.concat()
函数
内连接 (inner join),一般默认,只保留匹配到的结果
左(外)连接 (left join),以左侧表的连接键唯一值数量为准,左表行数不变
右(外)连接 (right join),右表行数不变
全连接 (full join),在pandas中没有:在数据库中指返回左右表的所有行,缺失处补空值。行数=左表的行数+右表的行数-公共连接行
举例,下面左表5行2列,右表-4行两列,公共列为fid,fid公共行数为3行,结果
内连接返回三行,['a', 'b','c'],未匹配的丢弃
左连接返回5行,[1,2,3,4,5],无值则补null
右连接返回3行,[3,4,5,7],无值则补null
1 | import pandas as pd |
分别输出: