Логическое И в NumPy
Нужна
ячейка только там, где выполняются
оба сравнения сразу. Для этого
логические маски складывают оператором
& поэлементно: True
получается лишь если оба флага в этой
позиции истинны.
У & приоритет выше, чем у знаков
сравнения, поэтому каждое условие
записывают в скобках. Иначе сравнение
свяжется не с тем операндом.
Оставим в ряде только числа строго
между 2 и 5 (границы
не входят):
import numpy as np
values = np.array([1, 3, 4, 6])
print((values > 2) & (values < 5)) # выведет [False True True False]
Тот же приём для таблицы: в каждой ячейке оба порога должны выполняться:
import numpy as np
grid = np.array([[0, 3], [4, 7]])
print((grid >= 1) & (grid <= 4)) # выведет [[False True] [ True True]]
Создайте ряд из пяти целых чисел
и выведите маску, где значение
больше 0 и одновременно
меньше 10.
Задайте ряд оценок и выведите маску,
где оценка не ниже 3 и не выше
4.
Создайте таблицу 2 на 3
и выведите маску, где в ячейке
число и чётное, и положительное.