Nao*_*man 7 arrays numpy multidimensional-array python-2.7
我需要沿 Z 轴翻转 3D 数组 A 形状 [m, n, k]。我需要平面 0 (A[0,:,:]) 变为 k-1,平面 1 变为 k-2 平面,依此类推。
我需要在许多数组上执行此操作,并且循环非常慢。
我试过:
C = numpy.rot90(A,2)
C = flipud(A)
C = A[::-1]
Run Code Online (Sandbox Code Playgroud)
我还尝试了 rol 和 reshape,但不是我需要的。
例如:A 是 (3, 2, 2)
A= np.array([[[ 1.01551435, -0.76494131],
[ 0.56853752 , 1.94491724]],
[[-0.97433012 , 2.08134198],
[-1.34997602 ,-0.33543117]],
[[ 0.54217072, -1.33470658],
[-0.50179028, -0.66593918]]])
Run Code Online (Sandbox Code Playgroud)
我需要将 Z 轴倒置重新排序:
[[ 0.54217072 -1.33470658]
[-0.50179028 -0.66593918]]
[[-0.7703279 0.02402204]
[-0.18006451 -0.37589744]]
[[ 1.01551435 -0.76494131]
[ 0.56853752 1.94491724]]
Run Code Online (Sandbox Code Playgroud)
有任何想法吗 ?
正如@hpaulj 建议的:
A = A[::-1, :, :]
print A.shape
print A
(3L, 2L, 2L)
[[[ 0.54217072 -1.33470658]
[-0.50179028 -0.66593918]]
[[-0.97433012 2.08134198]
[-1.34997602 -0.33543117]]
[[ 1.01551435 -0.76494131]
[ 0.56853752 1.94491724]]]
Run Code Online (Sandbox Code Playgroud)