pandas - 在不合并来自其他数据帧的数据的情况下在另一个 DF 中查找值
pandas - lookup a value in another DF without merging data from the other dataframe
我有 2 个 DataFrame。 DF1 和 DF2.
(请注意 DF2 的条目数比 DF1 多)
我想做的是将国籍列添加到DF1(脚本应该在DF1中查找名称并在DF2中找到相应的国籍)。
我目前正在使用以下代码
final_DF =df1.merge(df2[['PPS','Nationality']], on=['PPS'], how ='left')
虽然国籍列被添加到 DF1,但代码复制了条目并且还添加了我不想要的来自 DF2 的其他数据。
有没有办法在只保留DF1数据的情况下从DF2获取国籍?
谢谢
DF1
DF2
输出
2分,你需要做的。
DF2中是否有重复
可以在合并语句中定义'how'。所以它看起来像
final_DF = DF1.merge(DF2, on=['Name'], how = 'left')
因为您只想保留 DF1 行,'left' 应该是您的理想选择。
有关详细信息,请参阅 this
我有 2 个 DataFrame。 DF1 和 DF2.
(请注意 DF2 的条目数比 DF1 多)
我想做的是将国籍列添加到DF1(脚本应该在DF1中查找名称并在DF2中找到相应的国籍)。
我目前正在使用以下代码
final_DF =df1.merge(df2[['PPS','Nationality']], on=['PPS'], how ='left')
虽然国籍列被添加到 DF1,但代码复制了条目并且还添加了我不想要的来自 DF2 的其他数据。
有没有办法在只保留DF1数据的情况下从DF2获取国籍?
谢谢
DF1
DF2
输出
2分,你需要做的。
DF2中是否有重复
可以在合并语句中定义'how'。所以它看起来像
final_DF = DF1.merge(DF2, on=['Name'], how = 'left')
因为您只想保留 DF1 行,'left' 应该是您的理想选择。
有关详细信息,请参阅 this