You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

pandas如何对不同长度DataFrame做列匹配后为人员表新增薪资列

解决方案

核心思路是通过pandas的merge方法实现双字段同时匹配,一次关联就能得到对应的薪资数据:

  1. 首先确保你已经导入pandas库:
import pandas as pd
  1. 执行双字段匹配关联,代码如下:
# 按两个对应字段匹配岗位表和人员表
person_with_salary = person_df.merge(
    job_df,
    left_on = ["Level1", "Position1"],
    right_on = ["Role", "Position"],
    how = "left"
)

# 可选:删除匹配后多余的Role、Position字段,只保留需要的信息
person_with_salary = person_with_salary.drop(columns = ["Role", "Position"])
  1. 运行结果说明:
    最终得到的person_with_salary会在原有人员表的基础上新增Salary列,示例里的两条数据匹配结果如下:
  • John匹配后薪资为2
  • Shawn匹配后薪资为1

如果你只需要保留两个表都匹配成功的记录,把how="left"改成how="inner"即可,未匹配成功的人员会被过滤。

内容的提问来源于stack exchange,提问作者jungee

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 14:18:03