ValueError: could not convert string to float

Part 1:

最开始出现的问题在于map对象前面没有加list,后来转化为list又报错:

ValueError: could not convert string to float


原因是数据中含有一些不能转化为数据的字符。

后来发现原来原始数据读进来每一行是这样的

['1', '.', '0', '1', '.', '0', '3', '4', '4', '9', '3', '6', '5', '1', '3', '5', '8', '6'],
 
 

每一个数字都被拆开了。

最开始我的解决方案是认为数据文件生成的时候就有问题,操作了一会儿发现完全可以从上面数据读取的形式想办法解决,既然它们被拆开了那我就可以把他们先拼好,然后再按照‘,’拆开。


Part 2:

后来又出现了问题,使用二值法排查发现有一个列表是这样样的:

song_info = ['1.0,,4,18331,3,281', '1.0,0.95,4,18331,3,281']

扫描二维码关注公众号,回复: 1865796 查看本文章

也就是说存在控制,对于这种情况,那就是原始txt生成就有问题。

我原来采用的是用长度来filter,这么一看发现长度筛选不对,应该看是否有空值,于是就按照这个思路,重新生成了一个txt文件,这下就可以了。


猜你喜欢

转载自blog.csdn.net/yuxeaotao/article/details/79804853