【发布时间】:2015-03-02 13:57:40
【问题描述】:
我正在尝试使用带有标题名称和非同质数据类型的 numpy 的 genfromtxt 导入数据。每次我运行程序时都会出现错误:
Traceback (most recent call last):
raise ValueError(errmsg)
ValueError: Some errors were detected !
Line #8 (got 6 columns instead of 1)
Line #9 (got 6 columns instead of 1)
Line #10 (got 6 columns instead of 1)
Line #11 (got 6 columns instead of 1)
Line #12 (got 6 columns instead of 1)
我已经经历过这个question 但这并没有解决我的问题。这是一个非常简单的问题,但我不知道出了什么问题。包含代码和数据:
代码
import numpy as np
data = np.genfromtxt('Data.dat', comments='#', delimiter='\t', names=True, dtype=None).transpose()
print data
制表符分隔的数据
# -----
# -----
# -----
# -----
# -----
# -----
# -----
column_1 column_2 column_3 column_4 column_5 column_6
1 2 3 A 1 F
4 3 2 B 2 G
1 4 3 C 3 H
5 6 4 D 4 I
更新
简而言之,我需要一种将 skip_header 之后的第一个有效行转换为可选参数 names=True 的第一个未注释的有效行的方法。
【问题讨论】:
-
您的列标题是制表符分隔的吗?它们可能是空格分隔的,这导致 numpy 将其解释为一列。
-
这里看起来是空格分隔的,但实际上是制表符分隔的。
标签: python numpy genfromtxt