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

如何将Pandas DataFrame列中字符串格式浮点列表转换为实际列表类型

解决方案

方法1:使用ast.literal_eval(最简洁,推荐)

这是最省心的方案,直接安全解析字符串格式的Python字面量,无需手动处理字符串规则:

import ast
# 对interval列直接做类型转换
df['interval'] = df['interval'].apply(ast.literal_eval)

转换后直接得到存储float元素的列表类型,和手动写for循环遍历解析的效果完全一致,但代码更简洁,执行效率也更高。

方法2:字符串向量化处理(适合超大数据量场景)

如果你的DataFrame数据量极大,想要更高的执行性能,可以用pandas原生的向量化字符串方法处理:

# 先移除首尾方括号,再按逗号分割,最后批量转float
df['interval'] = df['interval'].str.strip('[]')\
                               .str.split(',\s*')\
                               .apply(lambda x: [float(num) for num in x])

你可以通过以下代码验证转换结果:

# 确认列元素是列表类型
print(type(df.iloc[0]['interval']))
# 确认列表内元素是float类型
print(type(df.iloc[0]['interval'][0]))

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.04 12:54:00