2017-09-18 198 views
2

我试图转换到数据帧数组numpy的:ValueError异常:无法将字符串转换为float:'62,6'

dataset = myset.values 
X = np.array(dataset[0:,6:68], dtype="float32") 
X[0:5,0:] 

Here is a piece of the data

这里是一个错误:

----------------------------------------------------------------------- 

---- 
ValueError        Traceback (most recent call last) 
<ipython-input-162-4b67608047d1> in <module>() 
     1 dataset = myset.values 
----> 2 X = np.array(dataset[0:,6:68], dtype="float32") 
     3 X[0:5,0:] 

ValueError: could not convert string to float: '62,6' 

问题在哪里?

+0

','是不是一个有效的小数点分隔符。 您可以在数据集加载器中使用'decimal =',''或用''.''替换'','',然后解析为float。 – pazqo

回答

2

尝试使用replace,.

dataset = myset.replace(',','.', regex=True).values 

或者使用参数decimalread_csv的转换,.在彩车:

dataset = pd.read_csv('file', decimal=',') 
0

在Python(或基本上今天使用任何编程语言),点(.)用于小数点,不是逗号(,),所以你应该跟你处理字符串中圆点代替逗号。

相关问题