Pandas 合并未按预期工作 - 合并结果不正确且缺失

问题描述 投票:0回答:1

我有两个数据框,我正在尝试合并:

df1 - 用户信息

Employee ID Country
1           UK
100         USA
31          India
6           UK
45          UK

df2 - refcompanylookup

Country Company
UK      UK Company LTD 1
USA     US Company LLC 1
India   India Company PVT 1
UserInfo['Mapped Company'] = UserInfo.merge(refcompanylookup, how = 'left', left_on = 'Country', right_on = 'Country')['Company']

即将回归:

Employee ID Country     Mapped Company
1           UK          US Company LLC 1
100         USA 
31          India   
6           UK  
45          UK  

我不清楚为什么会失败。我检查了 df1 Country 和 df2 Company 的 dtypes:

UserInfo['Country'].dtype
refcompanylookup['Country'].dtype

两者都返回为:

dtype('O')

这个答案我理解这意味着它们都是字符串并且没问题。

pandas merge
1个回答
0
投票

我认为

df.merge
并不像你想象的那样。无需将
merge
的输出分配给数据框列。您可以尝试一下是否有效:

pd.merge(UserInfo, refcompanylookup, how="left", on="Country")

© www.soinside.com 2019 - 2024. All rights reserved.