numpy.clip()
Функция numpy.clip() ограничивает значения массива заданным интервалом [a_min, a_max]: всё, что меньше a_min, заменяется на a_min; больше a_max — на a_max.
Сигнатура
numpy.clip(a, a_min, a_max, out=None, **kwargs)
Параметры
a— входной массив.a_min— нижняя граница. МожноNone(не ограничивать снизу).a_max— верхняя граница. МожноNone.out— массив для записи результата.
Возвращаемое значение
ndarray со значениями, попавшими в [a_min, a_max].
Примеры
Пример 1. Ограничение в ``[0, 5]``.
import numpy as np
arr = np.array([-3, 0, 2, 6, 10])
print(np.clip(arr, 0, 5))
[0 0 2 5 5]
Пример 2. Только верхняя граница.
arr = np.array([1, 50, 100, 200])
print(np.clip(arr, None, 100))
[ 1 50 100 100]
Пример 3. Векторные границы.
arr = np.array([1, 5, 10, 20])
lo = np.array([2, 2, 8, 25])
hi = np.array([4, 6, 15, 30])
print(np.clip(arr, lo, hi))
[ 2 5 10 25]
Пример 4. Ограничение ШИМ-сигнала диапазоном 0–255.
pwm = np.array([-10, 50, 200, 300])
safe = np.clip(pwm, 0, 255)
print(safe)
[ 0 50 200 255]
Пример 5. Запись на место через out.
arr = np.array([1.0, 2.5, 5.0, 7.5, 10.0])
np.clip(arr, 2, 8, out=arr)
print(arr)
[2. 2.5 5. 7.5 8. ]
См. также
Примечание
Лицензия и источники
Техническое описание функции адаптировано из официальной документации NumPy (https://numpy.org/doc/stable/), BSD-3-Clause License. Примеры и пояснения — © AlashEd Wiki.