numpy.clip#
-
numpy.clip(a, a_min=<нет значение>, a_max=<нет значение>, out=None, *, min=<нет значение>, max=
значение> , **kwargs)[источник]# Обрезать (ограничить) значения в массиве.
Для заданного интервала значения вне интервала обрезаются до границ интервала. Например, если интервал
[0, 1]указан, значения меньше 0 становятся 0, а значения больше 1 становятся 1.Эквивалентно, но быстрее, чем
np.minimum(a_max, np.maximum(a, a_min)).Не выполняется проверка, чтобы гарантировать
a_min < a_max.- Параметры:
- aarray_like
Массив, содержащий элементы для обрезки.
- a_min, a_maxarray_like или None
Минимальное и максимальное значение. Если
None, обрезка не выполняется на соответствующем крае. Если обаa_minиa_maxявляютсяNone, элементы возвращаемого массива остаются теми же. Оба транслируются относительноa.- выходndarray, необязательно
Результаты будут помещены в этот массив. Он может быть входным массивом для обрезки на месте. выход должен быть правильной формы для хранения вывода. Его тип сохраняется.
- min, maxarray_like или None
Совместимые с Array API альтернативы для
a_minиa_maxаргументы. Либоa_minиa_maxилиminиmaxможно передать одновременно. По умолчанию:None.Новое в версии 2.1.0.
- **kwargs
Для других аргументов, доступных только по ключевым словам, смотрите документация ufunc.
- Возвращает:
- clipped_arrayndarray
Массив с элементами a, но где значения < a_min заменяются на a_min, и те > a_max с a_max.
Смотрите также
Примечания
Когда a_min больше чем a_max,
clipвозвращает массив, в котором все значения равны a_max, как показано во втором примере.Примеры
>>> import numpy as np >>> a = np.arange(10) >>> a array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9]) >>> np.clip(a, 1, 8) array([1, 1, 2, 3, 4, 5, 6, 7, 8, 8]) >>> np.clip(a, 8, 1) array([1, 1, 1, 1, 1, 1, 1, 1, 1, 1]) >>> np.clip(a, 3, 6, out=a) array([3, 3, 3, 3, 4, 5, 6, 6, 6, 6]) >>> a array([3, 3, 3, 3, 4, 5, 6, 6, 6, 6]) >>> a = np.arange(10) >>> a array([0, 1, 2, 3, 4, 5, 6, 7, 8, 9]) >>> np.clip(a, [3, 4, 1, 1, 1, 4, 4, 4, 4, 4], 8) array([3, 4, 2, 3, 4, 5, 6, 7, 8, 8])