1. 程式人生 > 其它 >pandas中merge的使用

pandas中merge的使用

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