Предположим, у меня есть 3D-массив arr
.Я хочу перебрать arr
таким образом, чтобы каждая итерация давала вектор вдоль z-axis
.Это можно сделать, но решение не обобщено.Если arr.shape
и ось, вдоль которой должны быть получены векторы, неизвестны или не являются переменными, то, похоже, прямого пути для этого нет.Кто-нибудь может предложить решение этой проблемы?
for line in np.nditer(arr, axis=2):
# Perform operation on line
arr = array(
[[[2, 2, 8, 8],
[6, 2, 1, 5],
[4, 5, 1, 4]],
[[7, 4, 7, 4],
[0, 0, 3, 3],
[7, 6, 8, 0]]]
)
Ожидаемый результат:
[2 2 8 8]
[6 2 1 5]
[4 5 1 4]
[7 4 7 4]
[0 0 3 3]
[7 6 8 0]