用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