numpy.sign()
Функция np.sign поэлементно возвращает знак числа: -1 для отрицательных, 0 для нулевых и +1 для положительных значений. Для комплексных чисел возвращает x / |x|.
Сигнатура
numpy.sign(x, /, out=None, *, where=True, dtype=None)
Параметры
x— входной массив или число.out— необязательный массив для записи результата.where— условная маска вычисления.
Возвращаемое значение
Массив той же формы, что и x, со значениями -1, 0, +1 (тип float или соответствующий целый).
Примеры
Пример 1. Знаки чисел.
import numpy as np
print(np.sign([-5, -1, 0, 1, 5]))
[-1 -1 0 1 1]
Пример 2. Направление вращения мотора.
speed = np.array([-150, 0, 200, -50])
direction = np.sign(speed)
print(direction)
[-1 0 1 -1]
Пример 3. С дробными числами.
print(np.sign([-0.5, 0.0, 3.14, -2.7]))
[-1. 0. 1. -1.]
Пример 4. Разделение положительных и отрицательных отсчётов сигнала.
signal = np.array([0.1, -0.3, 0.5, -0.2, 0.0])
positive = np.sum(np.sign(signal) > 0)
negative = np.sum(np.sign(signal) < 0)
print(f"+: {positive}, -: {negative}")
+: 2, -: 2
Пример 5. Реализация функции активации (sign как простой классификатор).
x = np.array([-0.7, 0.2, -0.1, 0.9])
y = np.sign(x)
print(y)
[-1. 1. -1. 1.]
См. также
Примечание
Лицензия и источники
Техническое описание функции адаптировано из официальной документации NumPy (https://numpy.org/doc/stable/), BSD-3-Clause License. Примеры и пояснения — © AlashEd Wiki.