首先,创建两个DataFrame:
df1 = DataFrame({
'name':['ZhangFei', 'GuanYu', 'a', 'b', 'c'], 'data1':range(5)})
df2 = DataFrame({
'name':['ZhangFei', 'GuanYu', 'A', 'B', 'C'], 'data2':range(5)})
1、基于指定列进行连接
比如我们基于name这一列进行连接。
df3 = pd.merge(df1,df2,on = 'name')
2、inner内连接
inner 内链接是 merge 合并的默认情况,inner 内连接其实也就是键的交集,在这里 df1, df2 相同的键是 name,所以是基于 name 字段做的连接:
df3 = pd.merge(df1,df2,how = 'inner')
3、left左连接
左连接是以第一个 DataFrame 为主进行的连接,第二个 DataFrame 作为补充
df3 = pd.merge(df1,df2,how = 'left'
4、right右连接
右连接是以第二个 DataFrame 为主进行的连接,第一个 DataFrame 作为补充
df3 = pd.merge(df1,df2,how = 'right')
5、outer外连接
外连接相当于求两个 DataFrame 的并集。
df3 = pd.merge(df1,df2,how = 'outer')