使用 Genfromtxt 仅对一列出错。可以读取所有其他列。我该如何解决?
error only for one column by using Genfromtxt. All other columns could be read. how can i fix it?
我是 python 的新手,我想从 .txt 文件中读取我的数据。除了 header 只有花车。我有 6 列和很多行。
要阅读它,我正在使用 genfromtxt。如果我想阅读前两列它正在工作,但如果我想阅读第 5 列我收到以下错误:
Line #1357451 (got 4 columns instead of 4)
这是我的代码:
import numpy as np
data=np.genfromtxt(dateiname, skip_header=1, usecols=(0,1,2,5))
print(data[0:2, 0:3])
我认为第 5 列中缺少一些值,因此它不起作用。
有没有人想解决我的问题并阅读第 5 列的数据?
来自 genfromtxt
文档:
Notes
-----
* When spaces are used as delimiters, or when no delimiter has been given
as input, there should not be any missing data between two fields.
如果所有列(包括缺失的列)都正确排列,您可以使用 delimiter
.
的固定列宽版本
An integer or sequence of integers
can also be provided as width(s) of each field.
当一行看起来像:
one, 2, 3.4, , 5, ,
它可以明确识别7列。相反,如果它是
one 2 3.4 5
它只能识别4列(一般两个空格算一个,等等,尾随空格被忽略)
我找到了另一个解决方案。使用 filling_values=0
我可以用零填充空值。现在它正在工作! :)
import numpy as np
data=np.genfromtxt(dateiname, skip_header=1, usecols=(0,1,2,5), delimiter='\t', invalid_raise=False, filling_values=0)
此外,我不再将分隔符保留为默认值,而是定义了制表符距离,并且使用 invalid_raise
您可以跳过缺少的值。
我是 python 的新手,我想从 .txt 文件中读取我的数据。除了 header 只有花车。我有 6 列和很多行。 要阅读它,我正在使用 genfromtxt。如果我想阅读前两列它正在工作,但如果我想阅读第 5 列我收到以下错误:
Line #1357451 (got 4 columns instead of 4)
这是我的代码:
import numpy as np
data=np.genfromtxt(dateiname, skip_header=1, usecols=(0,1,2,5))
print(data[0:2, 0:3])
我认为第 5 列中缺少一些值,因此它不起作用。 有没有人想解决我的问题并阅读第 5 列的数据?
来自 genfromtxt
文档:
Notes
-----
* When spaces are used as delimiters, or when no delimiter has been given
as input, there should not be any missing data between two fields.
如果所有列(包括缺失的列)都正确排列,您可以使用 delimiter
.
An integer or sequence of integers
can also be provided as width(s) of each field.
当一行看起来像:
one, 2, 3.4, , 5, ,
它可以明确识别7列。相反,如果它是
one 2 3.4 5
它只能识别4列(一般两个空格算一个,等等,尾随空格被忽略)
我找到了另一个解决方案。使用 filling_values=0
我可以用零填充空值。现在它正在工作! :)
import numpy as np
data=np.genfromtxt(dateiname, skip_header=1, usecols=(0,1,2,5), delimiter='\t', invalid_raise=False, filling_values=0)
此外,我不再将分隔符保留为默认值,而是定义了制表符距离,并且使用 invalid_raise
您可以跳过缺少的值。