python dataframe join

用Dataframe实现SQL中的inner join, left join, right join
首先准备二张表,df1, df2

import pandas as pd
df1 = pd.DataFrame([{'col1':'a', 'col2':1}, {'col1':'b', 'col2':2}])
df2 = pd.DataFrame([{'col1':'a', 'col3':11}, {'col1':'c', 'col3':33}])
print df1
print df2

df1

   co12 col1
0     1    a
1     2    b

df2

   co13 col1
0    11    a
1    33    c

inner join

print pd.merge(left=df1, right=df2, how='inner', left_on='col1', right_on='col1')
----------
   co12 col1  co13
0     1    a    11

left join

print pd.merge(left=df1, right=df2, how='left', left_on='col1', right_on='col1')
----------
   co12 col1  co13
0     1    a    11
1     2    b   NaN

right join

print pd.merge(left=df1, right=df2, how='left', left_on='col1', right_on='col1')
----------
   co12 col1  co13
0     1    a    11
1   NaN    c    33

你可能感兴趣的:(python)