【发布时间】:2017-01-25 19:20:59
【问题描述】:
我有 2 个数据框:
df_a = pd.DataFrame({'A':[1,2,3,4],'B':[4,5,6,7],'ID':['a','b','c','d']})
df_a
A B ID
0 1 4 a
1 2 5 b
2 3 6 c
3 4 7 d
df_b = pd.DataFrame({'A':[1,2,3],'ID':['b','a','c']})
df_b['CopyB'] = ""
A ID CopyB
0 1 b
1 2 a
2 3 c
现在我想匹配两个数据帧中的 ID 列,并且在成功匹配后,我想将 B 的相应值从 df_a 复制到 df_b['CopyB']。我试过df_b.loc[df_b['ID'].isin(df_a['ID']),'Copy']= df_a['B]
但这是不正确的。然后我尝试使用 '==' 比较 ID,但由于 ID 系列的长度不相等而出现错误。有什么帮助吗?对不起,如果这是一个非常琐碎的查询。
【问题讨论】:
-
你的预期输出是什么?
标签: python python-2.7 python-3.x pandas dataframe