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

Python如何拆分pandas DataFrame列字符串值并转换为整数或浮点数

解决方案

你可以在拆分字符串后通过apply方法遍历列表元素做类型转换,以下是不同场景的实现方式:

1. 统一转整数类型

import pandas as pd

# 示例DataFrame
df11 = pd.DataFrame({'A': ['1'+'_'+'2']})
# 拆分后转整数列表
df11["Timetaken"] = df11['A'].str.split('_').apply(lambda x: [int(i) for i in x])

运行后df11["Timetaken"].iloc[0]的输出为[1, 2],元素均为整数类型。

2. 统一转浮点数类型

把上面代码里的int替换为float即可:

df11["Timetaken"] = df11['A'].str.split('_').apply(lambda x: [float(i) for i in x])

输出结果为[1.0, 2.0]。

3. 自动适配整型/浮点型,兼容异常值

如果字符串里既有整数也有小数,或者可能存在非数字字符,可以用pd.to_numeric做转换,还能通过errors参数控制异常处理逻辑:

# 自动识别数值类型,遇到非数字默认抛出错误
df11["Timetaken"] = df11['A'].str.split('_').apply(lambda x: [pd.to_numeric(i) for i in x])

# 如果要忽略非数字字符转成NaN,添加errors参数即可
df11["Timetaken"] = df11['A'].str.split('_').apply(lambda x: [pd.to_numeric(i, errors='coerce') for i in x])

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.29 10:09:00