Если у меня есть массив отрицательных и положительных чисел, как я могу сделать все отрицательные числа равными нулю и оставить все положительные числа простым способом (без итерации по нему с несколькими циклами for, поскольку массив многомерный)? Моя идея была:
a = np.array(...) # any random array a = 0 if a < 0 else a
Но это не работает: (
Спасибо
Вы можете попробовать это:
>>> a = np.array([1, 2, 3, -3, -2, 5, -1]) >>> a[a<0] = 0 >>> a >>> [1, 2, 3, 0, 0, 5, 0]
Попробуйте с np.where
np.where
a=np.array([1,2,3,-1,2,-4]) a=np.where(a>0, a, 0)
Вывод:
a [1 2 3 0 2 0]