python merge()

  • python merge()——类似于sql中的join()函数

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)
  1.   若左右key相同则

  默认how='inner'——内连接,取交集

  若how='outer'——全连接,取并集

  • how='left'  ### 左连接,左边取全部,右边取部分,没有值则用NaN填充
  • how='right') ###  右连接,右边取全部,左边取部分,没有值则用NaN填充

 

   2.  若左右key不同,则可以用left_on,right_on来进行指定

  • left_on='lkey',right_on='rkey'   ### 内连接,默认how='inner'
  • left_on='lkey',right_on='rkey', how='left'  ### 左连接
  • left_on='lkey',right_on='rkey',how='right'  ### 右连接

   3.索引作为连接键

df5=pd.DataFrame(np.arange(12).reshape(3,4),index=list('abc'),columns=['v1','v2','v3','v4'])
df6=pd.DataFrame(np.arange(12,24,1).reshape(3,4),index=list('abd'),columns=['v5','v6','v7','v8'])
pd.merge(df5,df6,left_index=True,right_index=True)

 

posted @ 2020-08-05 14:43  柒久酒  阅读(2210)  评论(0编辑  收藏  举报