python - ValueError:无法将字符串转换为 float : '62,6'

标签 python pandas numpy valueerror

我正在尝试将数据帧转换为 numpy 数组:

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'

哪里出了问题?

最佳答案

尝试使用 replace :

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

或者在read_csv中使用参数decimal用于将 , 转换为 float 中的 .:

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

关于python - ValueError:无法将字符串转换为 float : '62,6',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46282135/

相关文章:

python - pandas:T/F 表示两个范围是否相交

python - 使用 pandas 对文本字段进行 vlookup

python - 数组与稀疏矩阵的相关性

numpy - 使用特定形式的损失梯度相对于其参数来最小化损失函数

python - 将数据框转换为具有多个值的字典

python - 为什么 numpy.ndarray.resize() 返回 None

python - 在Python中跳过某些文件夹

python - 如何在 matplotlib 的树状图中添加颜色 - python 中的 scipy?

python - 出于安全目的,将 os.system 替换为 os.popen

python - 教我 pandas dataframe 的方法来做到这一点?