Numpy genfromtxt具有多行数据

时间:2018-01-31 14:06:51

标签: python numpy

我有一个文本文件,每个记录是一个4x3的数值块,例如

1 1 1
1.0 1.0 1.0
1.0 1.0 1.0
1.0 1.0 1.0

2 2 2
2.0 2.0 2.0
2.0 2.0 2.0
2.0 2.0 2.0

我试图把它们读成一个numpy结构化数组。 genfromtextloadtxt似乎都希望将数据表示为单行而不是供应商提供的自定义格式。我知道可以通过标准python读取行,将每组4行推入单个字符串,然后将字符串传递给numpy,但我想知道numpy本身是否支持这种类型的操作?我在genfromtxt docs中没有看到任何内容。

例如,genfromtxt(fname, skip_header=1, shape=(4,3), dtype=my_custom_dtype)

1 个答案:

答案 0 :(得分:3)

我只是将您的数据放入文件并测试loadtxt。它将所有内容都读入一个数组,然后您只需将其拆分。

a = np.loadtxt(fname)
res = np.vsplit(a, a.shape[0]/4)