我有一个像这样的数组
ar = np.array([[0, 1, 0, 1, 0, 1, 0, 1],
[0, 1, 0, 0, 0, 1, 1, 1]])
我想得到
array([[0., 0.],
[1., 1.],
[0., 0.],
[1., 0.],
[0., 0.],
[1., 1.],
[0., 1.],
[1., 1.]])
如果我执行以下操作,我会得到
ar.reshape(8,2)
array([[0, 1],
[0, 1],
[0, 1],
[0, 1],
[0, 1],
[0, 0],
[0, 1],
[1, 1]])
我的决定是
npar = np.zeros((np.asarray(ar).shape[1],np.asarray(ar).shape[0]))
npar[:, 0] = ar[0]
npar[:, 1] = ar[1]
npar
array([[0., 0.],
[1., 1.],
[0., 0.],
[1., 0.],
[0., 0.],
[1., 1.],
[0., 1.],
[1., 1.]])
但是还有更便捷的方法吗?
答案 0 :(得分:2)
您只需要进行我认为的移调
np.transpose(ar)