我有两个数据帧
df1型
Srlno id image
1 3 image1.jpg
2 3 image2.jpg
3 3 image2.jpg
df2型
Srlno id image
1 1 image1.jpg
2 2 image2.jpg
3 3 image3.jpg
我想基于列映像匹配这两个数据帧,并将Id作为newcolumn从df2返回到df1。df2中的图像名称是唯一的,而df1中的图像名称有很多重复项。我想保留重复的图像名称,但为df2中的每个图像填写正确的id。你知道吗
预期输出为:
Srlno id image newids
1 3 image1.jpg 1
2 3 image2.jpg 2
3 3 image2.jpg 2
我试过了
df1['newids'] = df1['image'].map(df2.set_index('image')['id'])
这将返回一个错误InvalidInvexError('Reindexing only valid with unique value index objects')我知道df1中的重复项产生了这个错误…但不知道如何解决。你知道吗
另一个有
dict(zip())
的解决方案使用^{} 仅获取
image
的唯一map
值:相关问题 更多 >
编程相关推荐