读取txt文件报错
源码def loadData(filename):
path = filename
data = np.loadtxt(path, dtype=float, delimiter=',')
y, X_train = np.split(data, indices_or_sections=(2,), axis=1)
returnX_train, y
报错:
ValueError: could not convert string to float: '1 70.000000 1.000000 4.000000 130.000000 322.000000 0.000000 2.000000 109.000000 0.000000 2.400000 2.000000 3.000000 3.000000 '
该怎么改呢
看上去原数据的分隔符是空格,你切割符号应该改成 空格吧
data = np.loadtxt(path, dtype=float, delimiter=',')
改成 :
data = np.loadtxt(path, dtype=float, delimiter=' ')
试试看 Twilight6 发表于 2022-5-1 17:08
看上去原数据的分隔符是空格,你切割符号应该改成 空格吧
data = np.loadtxt(path, dtype=float, deli ...
还是同样的错误 我真的不想秃头 发表于 2022-5-1 19:19
还是同样的错误
建议把完整的报错信息贴上来,别人比较好分析 我真的不想秃头 发表于 2022-5-1 19:19
还是同样的错误
那应该是数据文件没处理好吧,你把数据文件部分内容和代码发一发
Twilight6 发表于 2022-5-1 21:46
那应该是数据文件没处理好吧,你把数据文件部分内容和代码发一发
我真的不想秃头 发表于 2022-5-2 13:34
切割符号是空格,不是 | 竖线,我当时是把字体背景弄红色,才看上去像竖线了......
另外你数据文件末尾有多余空格,导致空格切割符会切割出一个空字符串
使得转换为 float 时候也会报错,我帮你删了末尾的空格了
最后就是 98 代码的 :yi * gxi >= 1 这里
yi 是一个数组,有多个数据,gxi 是单独一个值,他们俩相乘之后还是一个数组,不能直接和 1 进行大小比较的
Twilight6 发表于 2022-5-2 14:02
切割符号是空格,不是 | 竖线,我当时是把字体背景弄红色,才看上去像竖线了......
另外你数据文件 ...
那这个yi*gxi>=1该怎么改呢 你的逻辑错了,应该先拆分,拆分后再去后修改数据的类型,因为拆分之前是字符串 我真的不想秃头 发表于 2022-5-2 20:57
那这个yi*gxi>=1该怎么改呢
这个不太清楚了,你自己回想回想你这个条件的用意,再想想怎么改吧
页:
[1]