【问题标题】:Numpy multidimensional transpose not giving expected resultNumpy多维转置未给出预期结果
【发布时间】:2019-01-17 01:50:32
【问题描述】:

我有一个维度为 (2, 3, 4, 5) 的数组。

当我执行np.transpose(a, (0, 3, 2, 1)) 时,我得到了形状为 (2, 5, 4, 3) 的预期结果。

但是当我执行np.transpose(a, (0, 3, 1, 2)) 时,我希望得到形状为 (2, 4, 5, 3) 的结果,但我得到的是 (2, 5, 3, 4) 的形状...

发生了什么事?

【问题讨论】:

    标签: numpy matrix numpy-ndarray


    【解决方案1】:

    尺寸:

    0:2

    1:3

    2:4

    3:5

    首先转置 (0,3,2,1) -> dims=[2,5,4,3]

    第二次转置 (0,3,1,2) -> dims=[2,5,3,4]

    发生的事情是 numpy 正在做它的工作,你只是喂错了形状,你想要的是 np.transpose(a, (0, 2, 3, 1))

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-12-08
      • 1970-01-01
      • 2021-09-15
      • 2016-01-30
      • 2021-04-11
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多