Python 将矩阵的元素转换为浮点数
下面是我正在处理的数据_1的输出:Python 将矩阵的元素转换为浮点数,python,string,Python,String,下面是我正在处理的数据_1的输出: print(data_1) [['1.0' '1.585' '1.78'] ['1.0' '1.908' '1.816'] ['1.0' '1.7' '1.732'] ..., ['1.0' '1.046' '4.824'] ['1.0' '1.138' '4.874'] ['1.0' '1.016' '5']] 我试图通过使用以下代码将元素转换为浮点数: data_2 = float(data_1) 但是我得到了以下错误 Typ
print(data_1)
[['1.0' '1.585' '1.78']
['1.0' '1.908' '1.816']
['1.0' '1.7' '1.732']
...,
['1.0' '1.046' '4.824']
['1.0' '1.138' '4.874']
['1.0' '1.016' '5']]
我试图通过使用以下代码将元素转换为浮点数:
data_2 = float(data_1)
但是我得到了以下错误
TypeError: only length-1 arrays can be converted to Python scalars
如何将此矩阵的元素转换为浮点?似乎您有一个numpy数组,
float
是一个只接受标量作为参数的基本python函数,即它只能将标量转换为浮点。对于numpy数组,有一个内置的astype
函数可用于类型转换:
data_1.astype(float)
# array([[ 1. , 1.585, 1.78 ],
# [ 1. , 1.908, 1.816],
# [ 1. , 1.7 , 1.732],
# [ 1. , 1.046, 4.824],
# [ 1. , 1.138, 4.874],
# [ 1. , 1.016, 5. ]])