Pandas 如何根据其他数据帧中列的值向数据帧coulmn添加值
我有类似这样的东西。此数据框包含唯一的Pandas 如何根据其他数据帧中列的值向数据帧coulmn添加值,pandas,Pandas,我有类似这样的东西。此数据框包含唯一的用户id和相应的用户名 df user_id user_name 1 Jack 2 Neil 3 Peter 4 Smith 5 Neev 我有第二个数据帧,类似这样 df1 user_id item_id user_name 1 23 Null 1
用户id
和相应的用户名
df
user_id user_name
1 Jack
2 Neil
3 Peter
4 Smith
5 Neev
我有第二个数据帧,类似这样
df1
user_id item_id user_name
1 23 Null
1 24 Null
2 34 Null
3 35 Null
5 45 Null
我想从第一个数据帧填充上面的user\u name
列。因此,如果匹配了user\u id
,则应在该位置输入相应的user\u name
所以应该是这样的
df1
user_id item_id user_name
1 23 Jack
1 24 Jack
2 34 Neil
3 35 Peter
5 45 Neev
我正在用python进行跟踪
b = df.user_name[df['user_id'].isin(df1['user_id'])]
df1['user_name'] = b
但是,它会删除重复项。我不想那样做。请帮助。使用
合并:
In [299]:
df1[['user_id','item_id']].merge(df,on='user_id')
Out[299]:
user_id item_id user_name
0 1 23 Jack
1 1 24 Jack
2 2 34 Neil
3 3 35 Peter
4 5 45 Neev
令人惊叹的。。谢谢你的回答。真的帮助了我。