您可以使用 NumPy 的 array() 函数将字符串转换成 NumPy 数组。首先,您需要将字符串中的逗号替换为分号,并将字符串的开头和结尾的方括号去掉。然后,您可以使用 eval() 函数将字符串转换成一个列表对象。最后,您可以使用 array() 函数将这个列表转换成一个 NumPy 数组。

下面是一个示例代码:

import numpy as np

str_arr = '[[51., 5., 0.,...,16., 0., 0.],[11.,77., 2.,..., 0., 0., 0.],[ 4., 6., 1.,...,43., 0., 0.],...,[10., 0., 0.,...,18., 0., 0.],[46., 0., 0.,..., 0., 1., 0.],[53., 0., 0.,..., 0., 0., 3.]]'

# 替换逗号为分号,并去掉方括号
str_arr = str_arr.replace(',', ';')[1:-1]

# 将字符串转换成列表对象
arr_list = eval(str_arr)

# 将列表转换成 NumPy 数组
np_arr = np.array(arr_list)

print(np_arr)

这将输出以下结果:

array([[51.,  5.,  0., ..., 16.,  0.,  0.],
       [11., 77.,  2., ...,  0.,  0.,  0.],
       [ 4.,  6.,  1., ..., 43.,  0.,  0.],
       ...,
       [10.,  0.,  0., ..., 18.,  0.,  0.],
       [46.,  0.,  0., ...,  0.,  1.,  0.],
       [53.,  0.,  0., ...,  0.,  0.,  3.]])
Python3 字符串转 NumPy 数组:详细指南和示例

原文地址: https://www.cveoy.top/t/topic/qrs9 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录