我有两个数据帧,df1和df2:
交通 | 城市 | 颜色 |
---|---|---|
汽车 | 巴黎 | 色//tr>|
汽车 | 伦敦 | 色//tr>|
自行车 | 巴黎 | 色//tr>|
汽车 | 纽约 | 色//tr>
如果两者匹配,则需要合并,然后过滤掉空值:
df1 = df1.merge(right=df2.drop_duplicates(), on=['City','Color'], how='left')
df1.dropna(subset=['Transport'], inplace = True)
让我知道这是否适合你
您可以在删除重复项后尝试合并以避免笛卡尔乘积:
df_1.merge(df_2.drop_duplicates(),left_on=['City','Color'],right_on=['City','Color'])
输出:
Transport City Color
0 Car Paris red
1 Bike Paris red
2 Car New York blue