Python 带有多行数据的Numpy genfromtxt

Python 带有多行数据的Numpy genfromtxt,python,numpy,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结构数组genfromtext和loadtxt似乎都希望将数据表示为一行,而不是供应商提供的自定义格式。我知道可以通过标准python读取这些行,将每组4行放入一个字符串中,然后将字符串传递给numpy,但我想知道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结构数组
genfromtext
loadtxt
似乎都希望将数据表示为一行,而不是供应商提供的自定义格式。我知道可以通过标准python读取这些行,将每组4行放入一个字符串中,然后将字符串传递给numpy,但我想知道numpy是否本机支持这种类型的操作?我在街上什么也没看到


例如,
genfromtxt(fname,skip_header=1,shape=(4,3),dtype=my_custom_dtype)
我只是将您的数据放入一个文件并测试了
loadtxt
。它将所有内容读取到一个数组中,然后您只需拆分该数组

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

我只是把你的数据放进一个文件,然后测试
loadtxt
。它将所有内容读取到一个数组中,然后您只需拆分该数组

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

如果您仍然想提供形状,为什么不在加载后执行
重塑
?或者您希望
genfromtext
计算出形状?如果您仍然想提供形状,为什么不在加载后执行
重塑
?或者您希望
genfromtext
计算形状吗?这是解决方案-本机读取,然后使用numpy进行重塑。这是解决方案-本机读取,然后使用numpy进行重塑。