如何将 3d 数组从形状 (nx, ny, nz) 重新排列为形状 (nz, nx, ny)?

问题描述 投票:0回答:0

我想知道是否有更多的 pythonic 方法(没有 for 循环)来获取由另一个 3d 数组的横向(轴 = 2)切片组成的 3d 数组,例如 from

A = np.array([[[1,1,1], [2,2,2]], [[3,3,3],[4,4,4]]])

我要获得

B=[[[1,2],[3,4]],[[1,2],[3,4]], [[1,2],[3,4]]]

这是一个最小的代码

import numpy as np
A = np.array([[[1,1,1], [2,2,2]], [[3,3,3],[4,4,4]]])
B=np.ndarray((3, 2, 2))
for i in range(3):
  B[i] = A[:,:,i]
print('B=', B)

A.reshape(3,2,2) 等直接重塑无法按预期工作。

numpy numpy-ndarray
© www.soinside.com 2019 - 2024. All rights reserved.