numpy.maximum()

Функция numpy.maximum() сравнивает два массива поэлементно и возвращает массив максимумов. В отличие от np.max(), это бинарная операция: сравниваются пары элементов из двух массивов.

Сигнатура

numpy.maximum(x1, x2, /, out=None, *, where=True, casting='same_kind', order='K', dtype=None)

Параметры

  • x1, x2 — входные массивы. Должны быть совместимы по broadcasting.

  • out — массив для результата.

  • where — маска применения операции.

Возвращает

ndarray той же формы, где каждый элемент = max(x1[i], x2[i]).

Пример 1. Сравнение двух массивов

import numpy as np

a = np.array([1, 5, 3, 8])
b = np.array([4, 2, 6, 7])
print(np.maximum(a, b))
[4 5 6 8]

Пример 2. Ограничение снизу (clip)

import numpy as np

data = np.array([-3, 2, -1, 5, 0])
print(np.maximum(data, 0))
[0 2 0 5 0]

Все отрицательные значения заменены нулём — аналог ReLU из машинного обучения.

Пример 3. Сравнение с константой

import numpy as np

pwm = np.array([50, 120, 200, 90, 255])
safe = np.maximum(pwm, 100)  # минимум 100
print(safe)
[100 120 200 100 255]

Пример 4. NaN распространяется

import numpy as np

a = np.array([1.0, np.nan, 3.0])
b = np.array([2.0, 5.0, np.nan])
print(np.maximum(a, b))
[ 2. nan nan]

Если хотя бы один элемент NaN, результат NaN. Для игнорирования NaN — np.fmax.

Пример 5. Broadcasting

import numpy as np

a = np.array([[1, 2, 3], [4, 5, 6]])
b = np.array([3, 3, 3])
print(np.maximum(a, b))
[[3 3 3]
 [4 5 6]]

См. также

Примечание

Лицензия и источники

Техническое описание функции адаптировано из официальной документации NumPy (https://numpy.org/doc/stable/), BSD-3-Clause License. Примеры и пояснения — © AlashEd Wiki.