我知道这可能是很基本的,但是当我尝试将文件加载到python.like
时,我不断出现以下错误。ValueError:无法将字符串转换为浮点型
我尝试过
input = np.loadtxt("input.txt", dtype='i', delimiter=' ')
open(file.txt,'r')
和read csv
,但无法正确读取,可能只是一些小错误。
文件如下例所示。我不需要第一行,因为它们仅说明限制和数据之间的步长。数字和一些空行之间有多个空格
谢谢
-89.9916666667 89.9916666667 -0.0083333333 360.0083333333 0.0166666667 0.0166666667
15.0900 15.0740 15.0730 15.0730 15.0730 15.0730
15.0730 15.0730 15.0730 15.0730 15.0730 15.0730
15.0730 15.0730 15.0740 15.0740 15.0740 15.0740
15.0740 15.0740 15.0730 15.0730 15.0730 15.0730
15.0730 15.0730 15.0730 15.0720 15.0720 15.0720
15.0720 15.0720 15.0720 15.0720 15.0710 15.0710
15.0710 15.0710 15.0710 15.0710 15.0710 15.0720
15.0720 15.0730 15.0730 15.0740 15.0740 15.0740
15.0740 15.0740 15.0730 15.0730 15.0730 15.0730
15.0730 15.0730 15.0740 15.0740 15.0750 15.0750
15.0760 15.0760 15.0760 15.0760 15.0760 15.0750
15.0750 15.0740 15.0740 15.0740 15.0730 15.0730
15.0730 15.0730 15.0730 15.0730 15.0730 15.0730
15.0740 15.0740 15.0740 15.0750 15.0750 15.0750
15.0760 15.0760 15.0760 15.0760 15.0760 15.0760
15.0760 15.0760 15.0760 15.0760 15.0750 15.0740
15.0740 15.0740 15.0740 15.0730 15.0730 15.0730
15.0730 15.0730 15.0720 15.0720 15.0720 15.0720
15.0720 15.0720 15.0720 15.0720 15.0710 15.0710
15.0710 15.0710 15.0710 15.0710 15.0710 15.0710
15.0710 15.0710 15.0710 15.0710 15.0710 15.0710
15.0710 15.0710 15.0710 15.0710 15.0710 15.0710
15.0710 15.0710 15.0710 15.0710 15.0710 15.0710
15.0710 15.0710 15.0720 15.0720 15.0730 15.0730
15.0730 15.0730 15.0730 15.0740 15.0730 15.0730
15.0730 15.0730 15.0730 15.0730 15.0730 15.0730
15.0730 15.0730 15.0730 15.0730 15.0730 15.0720
15.0720 15.0720 15.0710 15.0710 15.0700 15.0700
15.0700 15.0710 15.0710 15.0710 15.0720 15.0720
15.0720 15.0730 15.0730 15.0730 15.0740 15.0740
15.0740 15.0740 15.0740 15.0740 15.0740 15.0740
15.0740 15.0730 15.0730 15.0730 15.0730 15.0730
15.0730 15.0720 15.0720 15.0720 15.0720 15.0720
15.0720 15.0710 15.0710 15.0710 15.0710 15.0710
15.0710 15.0710 15.0710 15.0710 15.0710 15.0710
答案 0 :(得分:1)
似乎您的 input.txt 文件中有两个空行,并且值之间的间距不一致。空行需要删除。
为了说明,在第一行中,您有:
-89.9916666667 89.9916666667 -0.0083333333 360.0083333333 0.0166666667 0.0166666667
第一个值用一个空格分隔,其他值分别具有3、2和4。当您在对np.loadtxt("input.txt", dtype='i', delimiter=' ')
的调用中指定定界符时,就是在指定单个空格字符。只需删除delimiter关键字参数即可接受任意数量的空格字符作为分隔符。
此外,您的呼叫还使用dtype='i'
将输入数据类型指定为整数。我不知道这是否是故意的,但这会将所有值四舍五入到最接近的整数。查看您的数据,这可能不是您想要的。
最后,您对open('input.txt', 'r')
的调用没有任何作用,因为np.readtxt
自己处理文件的打开和关闭。
希望这可以解决您的问题。