刺伤一个3d阵列

时间:2015-11-06 03:07:23

标签: python arrays numpy

我有一个3d数组,我正在尝试一个stab列表。换句话说,给定数组:

t = np.array([[[1,2],[3,4]],[[5,6],[7,8]],[[9,10],[11,12]]])

array([[[ 1,  2],
      [ 3,  4]],

     [[ 5,  6],
      [ 7,  8]],

     [[ 9, 10],
      [11, 12]]])

我正在尝试检索:

array([[ 1,  5,  9],
       [ 2,  6, 10],
       [ 3,  7, 11],
       [ 4,  8, 12]])

np.ndarray.reshape似乎按顺序排列元素,排除了刺伤。

numpy.lib.stride_tricks.as_strided可能有用,但我还没有找到正确的值组合。

1 个答案:

答案 0 :(得分:3)

转置然后重塑:

UserBranch.new(branch_id: branch, user_id: @user.id)

编辑:或者,您可以重塑然后转置:

>>> t.transpose(1, 2, 0).reshape(4, 3)
array([[ 1,  5,  9],
       [ 2,  6, 10],
       [ 3,  7, 11],
       [ 4,  8, 12]])