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

如何计算DataFrame中含逗号分隔数字字符串列的行均值?

计算DataFrame中逗号分隔数字字符串列的每行均值

假设你有一个pandas DataFrame,其中某列的内容是由逗号分隔的数字字符串,需要计算每行所有数值的均值,示例数据和预期结果如下:

示例输入

"COLUMN 1"
2,18,10
10
80,20

预期输出

"MEAN"
10
10
50

解决方案

可以通过apply方法结合自定义函数实现需求:

import pandas as pd

# 构建示例DataFrame
df = pd.DataFrame({"COLUMN 1": ["2,18,10", "10", "80,20"]})

def get_row_mean(s):
    # 分割字符串并转换为数值列表
    num_list = list(map(float, s.split(",")))
    # 计算均值
    return sum(num_list) / len(num_list)

# 生成均值列
df["MEAN"] = df["COLUMN 1"].apply(get_row_mean)

# 查看结果
print(df["MEAN"])

运行后输出结果:

0    10.0
1    10.0
2    50.0
Name: MEAN, dtype: float64

异常情况处理(可选)

如果数据中存在空字符串、非数字内容等异常情况,可以给函数添加异常处理逻辑,避免程序报错:

def get_row_mean(s):
    try:
        num_list = list(map(float, s.split(",")))
        return sum(num_list) / len(num_list) if num_list else None
    except ValueError:
        # 遇到非数字内容时返回None
        return None

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.25 12:07:08