Я пытаюсь векторизовать порог для среза в трехмерном массиве.К сожалению, порог применяется ко всем 3 значениям в измерении.Единственный способ, которым я могу придумать, - это извлечь фрагмент 1, процесс, который затем поместит его обратно в массив, но я уверен, что есть лучший способ.Вот код, объясняющий, что я делаю и что я пытаюсь сделать.Большое спасибо за любую помощь.J
import numpy as np
arr = np.arange(18).reshape(3, 2, 3)
arr[ arr[:,:,1] < 10 ] = 0
Дает:
array([[[ 0, 0, 0],
[ 0, 0, 0]],
[[ 0, 0, 0],
[ 9, 10, 11]],
[[12, 13, 14],
[15, 16, 17]]])
Я надеялся на:
array([[[ 0, 0, 2],
[ 3, 0, 5]],
[[ 6, 0, 8],
[ 9, 10, 11]],
[[12, 13, 14],
[15, 16, 17]]])