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

Python如何计算文件表格数据的累计和与累计平均值

实现方案

这里提供两种实现方式,你可以根据自己的需求选择:

方法1:纯Python原生实现(无需安装额外库,适合理解底层逻辑)

假设你的数据存在名为data.csv的文件中,直接运行以下代码即可得到预期输出:

# 初始化累计和、行计数变量
total_marks = 0
row_count = 0

# 读取文件
with open("data.csv", "r", encoding="utf-8") as f:
    # 处理表头
    original_header = f.readline().strip()
    print(f"{original_header},CUM_SUM,AVG")
    # 逐行处理数据
    for line in f:
        line = line.strip()
        if not line:
            continue
        name, age, marks = line.split(",")
        marks = int(marks)
        # 计算累计和与当前平均值
        total_marks += marks
        row_count += 1
        current_avg = total_marks / row_count
        # 格式化输出,保留两位小数,和示例格式对齐
        print(f"{name},{age},{marks},{total_marks},{current_avg:.2f}")

方法2:使用pandas库实现(代码更简洁,适合批量处理表格数据)

首先需要安装pandas库,执行命令:pip install pandas
之后运行以下代码:

import pandas as pd

# 读取csv文件
df = pd.read_csv("data.csv")
# 计算MARKS列的累计和
df["CUM_SUM"] = df["MARKS"].cumsum()
# 计算到当前行的平均值,保留两位小数
df["AVG"] = df["MARKS"].expanding().mean().round(2)
# 输出结果,不显示行索引
print(df.to_csv(index=False))

运行以上任意一种方法,输出结果都会和你给出的预期格式一致。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.30 23:39:02