Reshape to split the first axis into two with the latter of length 3
and transpose -
a.reshape(-1,3).T
Or reshape in fortran
order with reshaping parameters flipped -
a.reshape(3,-1, order='F')
Sample run -
In [714]: a
Out[714]: array([ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12])
In [715]: a.reshape(-1,3).T
Out[715]:
array([[ 1, 4, 7, 10],
[ 2, 5, 8, 11],
[ 3, 6, 9, 12]])
In [719]: a.reshape(3,-1, order='F')
Out[719]:
array([[ 1, 4, 7, 10],
[ 2, 5, 8, 11],
[ 3, 6, 9, 12]])
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…