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

求助:按逗号分割二维字符串NumPy数组并转换为浮点型数组

解决方法

没问题,这事儿分两步就能轻松搞定,我给你一步步演示:

第一步:拆分逗号分隔的字符串,生成二维字符串数组

你的原始数组里每个元素都是包含逗号分隔数字的字符串,我们需要把每个字符串拆成单个的字符串元素。可以用列表推导式遍历每一行,对每个元素执行split(',')操作,再转成NumPy数组:

import numpy as np

# 原始数组
a = np.array([['1,2,3'], ['3,4,5']], dtype=object)

# 拆分字符串
split_a = np.array([row[0].split(',') for row in a])
print(split_a)
# 输出:array([['1', '2', '3'], ['3', '4', '5']], dtype='<U1')

第二步:将字符串数组转换为浮点数数组

得到二维字符串数组后,直接用astype(float)方法就能把所有元素转换成浮点数:

float_a = split_a.astype(float)
print(float_a)
# 输出:array([[1., 2., 3.], [3., 4., 5.]])

哦对了,你示例里最终数组的第二行是[4.0, 5.0, 6.0],但原始输入对应的是['3,4,5'],我猜这应该是笔误~如果你的实际输入是['4,5,6'],替换掉原始数组里的对应元素就行,操作逻辑完全一样。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.28 09:18:12