gpt4 book ai didi

arrays - 翻转 3D numpy 数组

转载 作者:行者123 更新时间:2023-12-04 03:19:18 25 4
gpt4 key购买 nike

我需要沿 Z 轴翻转形状为 [m, n, k] 的 3D Array A。
我需要平面 0 (A[0,:,:]) 变成 k-1,平面 1 变成 k-2 平面等等。

我需要在许多数组上这样做,而且循环非常慢。

我试过:

C = numpy.rot90(A,2)
C = flipud(A)
C = A[::-1]

我也尝试过 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]]])

我需要颠倒重新排序 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]]

有任何想法吗 ?

最佳答案

正如@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]]]

关于arrays - 翻转 3D numpy 数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39357935/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com