我已经知道怎么做了,但我想看看有没有更有效的方法.
我想要的是reshape 一个矢量,并将样本0到7保持在第一行,然后将样本8到15保持在第二行,依此类推.
以下是输出的一个示例,
array([[ 0, 1, 2, ..., 1221, 1222, 1223],
[ 8, 9, 10, ..., 1229, 1230, 1231],
[ 16, 17, 18, ..., 1237, 1238, 1239],
...,
[ 40, 41, 42, ..., 1261, 1262, 1263],
[ 48, 49, 50, ..., 1269, 1270, 1271],
[ 56, 57, 58, ..., 1277, 1278, 1279]])
由于输入数据如下所示,
array([ 0, 1, 2, ..., 1277, 1278, 1279])
有没有比这更有效的方法,
data = np.arange(0, 128*10)
# Reshape for S/H
temp = data.reshape(8*8, -1, order='F')
out = np.zeros((8, int(len(data)/8)))
for idx in range(0, 8):
out[idx] = temp[idx*8: idx*8+8, :].ravel(order = 'F')