Python:将文件加载到numpy数组时出错

2024-09-27 07:29:49 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个像这样的文件,它有大约80000行:

-1.1361818e-001  4.1730759e-002 -9.8787775e-001  9.7195663e-002
-1.1361818e-001  4.1730759e-002 -9.8787775e-001  9.7195663e-002
-1.1361818e-001  4.1730759e-002 -9.8787775e-001  9.7195663e-002
-1.1361818e-001  4.1730759e-002 -9.8787775e-001  9.7195663e-002

我希望使用numpy和scikit,并希望将文件写入一个数组,使其看起来像这样:

^{pr2}$

我在https://stackoverflow.com/a/10938021/1372560找到了以下示例

我试着让它适应我的例子:

import numpy as np
a = np.loadtxt("/path2file", delimiter="\t")
print a

我得到错误“ValueError:invalid literal for float():-1.1361818e-001 4.1730759e-002-9.8787775e-001 9.7195663e-002”

我真的被困在这里,感谢你的帮助。提前谢谢你!在


Tags: 文件httpsimportnumpycom示例asnp
2条回答

这对我很有用:

import numpy as np
a = np.loadtxt("a.txt")
print a

输出:

^{pr2}$

只需将delimiter字段留空,然后它将在任何空白处拆分。\t仅为空白字符:

演示:

>>> import numpy as np
>>> from StringIO import StringIO                                                     
>>> c = StringIO("1.234\t1.23456  1.234234")                                                 
>>> np.loadtxt(c)                                                                           
array([ 1.234   ,  1.23456 ,  1.234234])

来自docs

^{pr2}$

相关问题 更多 >

    热门问题