使用pandas通过索引从多个数据框添加数据

时间:2018-01-02 05:17:23

标签: python pandas

所以我得到了我的数据帧(df1):

Number    Name       Gender  Hobby
122       John       Male      -
123       Patrick    Male      -
124       Rudy       Male      -

我想根据数字列向爱好添加数据。假设我根据不同数据帧的编号得到了我的爱好列表。像例子(df2):

Number    Hobby
124       Soccer
...         ...
...         ...

和df3:

Number    Hobby
122       Basketball
...         ...
...         ...

我如何实现此数据框:

Number    Name       Gender  Hobby
122       John       Male    Basketball
123       Patrick    Male      -
124       Rudy       Male    Soccer

到目前为止,我已经尝试过以下解决方案:

Select rows from a DataFrame based on values in a column in pandas

但它只选择一些数据。我怎样才能更新“爱好”#39;专栏? 提前谢谢。

1 个答案:

答案 0 :(得分:0)

您可以使用mapmergejoin也可以实现

df['Hobby']=df.Number.map(df1.set_index('Number').Hobby)
df
Out[155]: 
   Number     Name Gender   Hobby
0     122     John   Male     NaN
1     123  Patrick   Male     NaN
2     124     Rudy   Male  Soccer