如何使用pandas读取Excel数据按车型时薪规则自动计算总薪资?
薪资计算需求实现方案
前置准备
你需要先安装两个Python库,pandas用来处理表格数据,openpyxl用来支持读取xlsx格式的Excel文件,执行以下安装命令即可:pip install pandas openpyxl
完整实现代码
import pandas as pd # 1. 预先定义不同车型的时薪标准,可根据你的实际需求增减修改 hourly_rate_map = { "Bike": 15.00, "Car": 25.00, "Truck": 32.00 } # 2. 读取Excel指定列数据,此处请替换为你自己的Excel文件路径 # 注意:引号内的列名必须和你Excel里的列名完全一致(大小写、空格都要匹配) df = pd.read_excel( io = "你的原始数据文件.xlsx", usecols = ["唯一ID", "车辆类型", "工时"] ) # 3. 匹配每行对应车型的时薪,计算总薪资 df["时薪"] = df["车辆类型"].map(hourly_rate_map) df["总薪资($)"] = df["时薪"] * df["工时"] # 4. 输出结果 # 打印所有ID对应的总薪资 print(df[["唯一ID", "车辆类型", "工时", "总薪资($)"]]) # 可选:将计算结果保存为新的Excel文件,不会修改你的原始文件 df.to_excel("薪资计算结果.xlsx", index=False)
注意事项
- 若Excel里出现你没有在
hourly_rate_map里定义的车型,对应行的总薪资会显示为空值,补全字典里的车型配置即可 - 如果你的Excel是.csv格式,把
pd.read_excel换成pd.read_csv即可,不需要openpyxl依赖 - 你提到的ID为28392、车型Bike、工时40的记录,运行代码后会自动计算得到15*40=600的总薪资,和需求一致
内容的提问来源于stack exchange,提问作者cchev
相关产品推荐
相关产品推荐

