如何基于公共列imageid合并两个dataframe获取对应imageurl
Pandas 两个DataFrame按imageid关联匹配方案
核心实现方法
直接使用pandas内置的merge()方法,以公共字段imageid作为关联键即可完成匹配:
- 若需要完整保留df1的所有行(即使部分imageid在df2中没有对应url也不删除数据),使用左连接:
import pandas as pd # 左连接匹配 merged_df = pd.merge(df1, df2, on="imageid", how="left")
- 若仅需要保留两个表都存在对应imageid的交集数据,使用内连接:
merged_df = pd.merge(df1, df2, on="imageid", how="inner")
结果说明
合并后的merged_df会自动包含id、Text、imageid、label、imageurl五个字段,匹配失败的imageurl在左连接模式下会填充为NaN值。
注:如果两个表的关联字段名不一致,可以通过
left_on和right_on参数分别指定左右表的关联键,本次场景中两个表关联键都是imageid,直接用on参数即可。
内容的提问来源于stack exchange,提问作者farheen fatima
相关产品推荐
相关产品推荐

