2015-07-03 86 views
1

如果我有2个列表或数据框架(熊猫)在Python中我如何合并/匹配/加入他们?Python合并2列表/ SQL JOIN

例如:

列表/ DF 1:

Table_Name Table_Alias 
    tab_1   t1 
    tab_2   t2 
    tab_3   t3 

列表/ DF 2:

Table_Alias Variable_Name 
    t1   Owner 
    t1   Owner_Id 
    t2   Purchase_date 
    t3   Maintenance_cost 

所需的结果:

Table_Name Table_Alias Variable_Name 
    tab_1   t1   Owner 
    tab_1   t1   Owner_Id 
    tab_2   t2   Purchase_date 
    tab_3   t3   Maintenance_cost 

注:如果我在R中这样做,我会使用类似的东西e:

df3 <- merge(df1, df2, by = 'Table_Alias', all.y = T) 

在python中这样做的最好方法是什么?

回答

2

你想要一个“外” merge

In [9]: 
df.merge(df1, how='outer') 

Out[9]: 
    Table_Name Table_Alias  Variable_Name 
0  tab_1   t1    Owner 
1  tab_1   t1   Owner_Id 
2  tab_2   t2  Purchase_date 
3  tab_3   t3 Maintenance_cost 

这将匹配来自DFS重叠列,并返回匹配行的联合。

-1

我只是简单地使用df1.append(df2)

+0

这附加其他df在第一个 – EdChum