Несколько условий в TensorFlow
Несколько сравнений в одной ячейке
соединяют операторами &, |
и ~. Знак & оставляет
истину только там, где выполняются
оба условия; | - где
хотя бы одно; ~ переворачивает
готовую маску.
У & и | приоритет выше,
чем у знаков сравнения, поэтому каждое
условие записывают в скобках. В прозе
связку «и» для двух масок иногда
называют знаком &, в коде пишут
обычный &.
Оставим в ряде только числа строго
между 2 и 5 (границы
не входят):
import tensorflow as tf
values = tf.constant([1, 3, 4, 6])
print((values > 2) & (values < 5))
Отметим в ряде числа меньше 2
или больше 5:
import tensorflow as tf
values = tf.constant([1, 3, 6, 4])
print((values < 2) | (values > 5))
Сначала получим маску «больше 2»,
затем инвертируем её:
import tensorflow as tf
values = tf.constant([1, 3, 2, 4])
above = values > 2
print(above)
print(~above)
Создайте ряд из пяти целых чисел
и выведите маску, где значение
больше 0 и одновременно
меньше 10.
Задайте ряд кодов и выведите маску,
где код равен 1 или равен 9.
Создайте ряд из четырёх чисел,
постройте маску «строго меньше 5»
и выведите маску с противоположными
флагами в каждой ячейке.