Skip to main content
 首页 » 编程设计

python之如果在右侧数据框中找不到左侧数据框中的值,如何使用合并返回 NaN 在 pandas 中执行 VLOOKUP

2025年05月04日21zhwl

所以第一个(也是左边的)数据框是:

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