Pandas:在不同名称的字段上加入DataFrames?

时间:2014-09-17 10:29:50

标签: python pandas join dataframe field

根据this documentation,我只能在具有相同名称的字段之间建立联接。

您知道是否可以在具有不同名称的字段上加入两个DataFrame?

SQL中的等价物是:

SELECT *
FROM df1
LEFT OUTER JOIN df2
  ON df1.id_key = df2.fk_key

2 个答案:

答案 0 :(得分:67)

我认为你想要的是merge。传递left_onright_on的关键字参数,告诉Pandas每个DataFrame中的哪些列用作键:

pandas.merge(df1, df2, how='left', left_on=['id_key'], right_on=['fk_key'])

文档在this page上详细描述了这一点。

答案 1 :(得分:-3)

df2 ['id_key'] = df2 ['fk_key']。str.lower()

df1 ['id_key'] = df1 ['id_key']。str.lower()

现在尝试合并数据框

df3 = pd.merge(df2,df1,how ='inner',on ='id_key')

相关问题