我认为以下示例可以使我的问题更加清楚。
我想做两件事 1)根据两个列的值进行匹配,然后过滤匹配的列。 2)如下所述,根据另一个数据帧的值分配一个值。
df1
name1 value 1
A 1
B 3
C 2
D 4
E 2
A 1
df2
name2
A
G
B
H
E
A
现在,我想基于这两个数据帧的列 name1 和 name2。 我想为匹配和过滤的列创建另一个值。
我正在寻找类似这样的结果。
name_matched value2
A 1
B 3
E 2
A 1
我只是在下面尝试了一些匹配方法。
case1 = df1[df1['name1'].isin(df2['name2'])]
case2 = df2[~df2['name2'].isin(df1['name1'])]
output = case1.append(case2, ignore_index = True)
output.head()
请问有没有人可以帮助我应对上述挑战?谢谢!