所以第一个(也是左边的)数据框是:
Name
Brees
Brady
Rodgers
Mahomes
第二个(也是右边的)数据框是:
Name
Brees
Brady
Wilson
Mahomes
我想回去
Name
Brees
Brady
NaN
Mahomes
我使用代码 pd.merge(df,df1,on="Name",how='left'),但它返回:
Name
Brees
Brady
Rodgers
Mahomes
本质上,返回的是左边的dataframe
请您参考如下方法:
您可以使用 pd.Series.where使用通过 isin 计算的 bool 级数:
df1['Name'] = df1.where(df1['Name'].isin(df2['Name']))
print(df1)
# Name
# 0 Brees
# 1 Brady
# 2 NaN
# 3 Mahomes
