2017-02-10 70 views
1

這裏的_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) 

而是我得到了以下錯誤

TypeError: only length-1 arrays can be converted to Python scalars 

我怎麼能這個矩陣的元素轉換成FLOA T'

回答

1

似乎你有一個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. ]]) 
+0

謝謝!有用。 :) –