Python Numpy:反向转置

Python Numpy: reverse transpose

假设我有一个形状为 (2,2,3) 的数组:x=np.array([[[1,2,3],[4,5,6]],[[7,8,9],[10,11,12]]]),并且我已将此数组沿轴 (2,0,1) 转置为 y:y=np.transpose(x,(2,0,1))

我的问题是,如何将 y 转置回 x?我知道我可以使用 np.transpose(y,(1,2,0)) 改回 x,但我希望有一种巧妙的方法来找到正确的轴 (1,2,0)。

感谢您的帮助!

您可以使用

np.argsort((2, 0, 1))

它给出:

array([1, 2, 0])

它适用于任何轴排列。