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

将pandas列Series转换为整数等类型并求和是否有更简便的方法?

Pandas 混合字符串数值列求和的更简洁实现

首先纠正一个API认知误区:pd.to_numeric原生支持Series类型作为输入,它的首个参数兼容所有一维类数组结构,包括Series、列表等都可直接传入。
以下是两种更简洁的实现方案:

通用场景方案(兼容任意非数字异常值)

适合列中除空字符串外,还可能存在其他无法转换为数字的异常值的场景,通过参数搭配可省略dropna步骤:

import pandas as pd

df = pd.DataFrame([
    [ 'a', '100' ],
    [ 'b', '' ],
    [ 'c', '300' ],
])
# 无法解析的值自动转NaN,填充0后求和再转整型
res = pd.to_numeric(df[1], errors='coerce').fillna(0).sum().astype(int)
print(res)

运行输出为400,和你原有方案结果完全一致,链式调用步骤更少,逻辑更连贯。

特定场景方案(仅需处理空字符串异常)

如果你的业务场景中只有空字符串属于需要跳过的异常值,没有其他无效数字格式,可直接替换空值后转换求和,代码更精简:

res = df[1].replace('', 0).astype(int).sum()

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 08:15:03