pandas中merge的使用
阿新 • • 發佈:2021-10-27
pd.merge(left, right, how='inner', on=None, left_on=None, right_on=None, left_index=False, right_index=False, sort=False, suffixes=('_x', '_y'), copy=True, indicator=False, validate=None)
常用引數:
left:左 DataFrame right:右 DataFrame how:連線方式:‘inner’(預設);還有,‘outer’、‘left’、‘right’ on:用於連線的列名,必須同時存在於左右兩個DataFrame物件中
先定義兩個DataFrame:
import pandas as pd import numpy as np df1 = pd.DataFrame({"name":['A','B','C','D','E'],"age":['10','15','20','25','30']})
df2 = pd.DataFrame({"name":['A','B','D','F','g'],"age":['5','30','35','40','45']}) df2
1.內連線 inner
merage預設的連線方式
以name為為基準,保留df1和df2同時存在的資料
df = pd.merge(df1,df2,on="name",how="inner") df
2.外連線 outer
以name為為基準,保留df1和df2所有的資料,不存在的值自動補充Nan
3.左連線 left
以name為為基準,以左邊age_x為標準,右邊age_y不存在的值自動補充Nan
4.右連線right
以name為為基準,以右邊age_y為標準,左邊age_x不存在的值自動補充Nan