Замена по маске в NumPy
Слева от знака равенства стоит отбор по маске, справа новое число. NumPy запишет его во все ячейки, где маска истинна. Исходный массив после такой операции меняется.
Обнулим все значения больше 3
в ряду и выведем результат:
import numpy as np
scores = np.array([1, 4, 3, 5])
scores[scores > 3] = 0
print(scores) # выведет [1 0 3 0]
Маску можно заранее сохранить в переменную, а присваивание выполнить отдельно:
import numpy as np
temps = np.array([10, 20, 15, 25])
mask = temps > 18
temps[mask] = -1
print(temps) # выведет [10 -1 15 -1]
Создайте ряд из чисел 2, 7,
5 и 9, замените все
элементы меньше 6 на 0
и выведите массив.
Задайте ряд из пяти целых чисел,
запишите 100 во все ячейки,
где значение чётное, и выведите
результат.