Pandas:来自条件和另一个数据框的新列
我有两个数据框,df1 和 df2。
df1 df2
A B C D E
ad df ad se 1
ad se xc je 2
xc je ad df 3
... ...
我需要在df1 中创建一个新列,其中包含来自df2 的E列中包含的值。为此,我需要分别从df1和df2 中找到A列和C列之间以及 B和D列之间的匹配值。
where A == C & B == D
XX = E
结果应该是这样的:
df1
A B XX
ad df 3
ad se 1
xc je 2
...
这可能很简单,但我对熊猫很陌生,还没有真正找到实现这一点的方法。
非常欢迎任何建议!
回答
尝试这个:
pd.merge(df1, df2.rename(columns={'C':'A', 'D':'B'}), on=['A', 'B'], how='left')