商城首页欢迎来到中国正版软件门户

您的位置: 首页 > 文章列表 > 编程开发 > 如何使用 Pandas 为 CSV 文件批量添加计算列并保存结果

如何使用 Pandas 为 CSV 文件批量添加计算列并保存结果

  发布于2026-07-13 阅读(0)

扫一扫,手机访问

本文介绍如何使用 Python 的 Pandas 库,向现有 CSV 文件中新增一列(如 salary),该列值为指定多列(如 basic_sal、Allowance、Perk)的行级求和,并将结果写入新文件或覆盖原文件。

数据处理中,这种场景很常见:你手头有一份员工薪资明细的 CSV 文件,里面已经列出了基本工资、津贴、福利等字段,但老板想要一个总薪资列——把这三项加到一起,放在最后一列。手动在 Excel 里拖公式当然也行,但如果文件有几百上千行,或者每隔几天就要更新一次,那就有点折磨人了。

用 Pandas 解决这件事,本质上就三步:读取、计算、保存。代码简洁到只要三行,而且语义清晰、不易出错。比起用 awk 写一串正则匹配或者手动逐行解析,Pandas 在列名语义化、类型安全以及后期维护上的优势不是一星半点。

具体来说,操作流程是这样的:

  1. 读取 CSV 文件——用 pd.read_csv() 把数据加载成 DataFrame;
  2. 新增计算列——直接通过赋值语法 df['salary'] = ... 创建新列,支持对多列做逐行算术运算;
  3. 保存结果——调用 to_csv() 输出到新文件(推荐),记得加上 index=False 避免把行号写进去。

直接看代码:

import pandas as pd

# 读取原始 CSV(请替换为实际路径)
df = pd.read_csv("employees.csv")

# 新增 salary 列:对 basic_sal、Allowance、Perk 三列求和
df["salary"] = df["basic_sal"] + df["Allowance"] + df["Perk"]

# 保存结果(不保留索引,确保格式与原始一致)
df.to_csv("employees_with_salary.csv", index=False)

这里有几个值得留意的细节:

  • 参与计算的列必须是数值类型(int64 或 float64)。如果原始数据里混了空值或者“$2,000”这种带符号的文本,建议先做一步类型清洗:df[["basic_sal","Allowance","Perk"]] = df[["basic_sal","Allowance","Perk"]].apply(pd.to_numeric, errors='coerce'),把非数字转为 NaN 再决定怎么处理。
  • 新增的列会自动出现在最右侧,天然符合“最后一列”的要求,不用手动调位置。
  • 如果非要覆盖原文件,to_csv("employees.csv", index=False) 也能做到,但强烈建议先留个备份。毕竟改完发现算错了,想恢复可就麻烦了。
  • 如果需要一次添加多个衍生列(比如毛工资、税、净工资),可以链式赋值或者分步定义,逻辑上保持清晰即可,Pandas 不限制你一口气加多少列。

这套方法可读性高、扩展性好,而且足够健壮——说白了,它就是数据预处理阶段添加衍生指标的“标准操作”,值得收藏复用。

本文转载于:https://www.php.cn/faq/2814548.html 如有侵犯,请联系zhengruancom@outlook.com删除。
免责声明:正软商城发布此文仅为传递信息,不代表正软商城认同其观点或证实其描述。

热门关注