pandas.Series.clip#

Series.clip(lower=None, upper=None, *, ось=None, inplace=False, **kwargs)[источник]#

Обрежьте значения по заданному порогу(ам).

Присваивает значения за пределами границы граничным значениям. Пороги могут быть одиночными значениями или подобными массиву, и в последнем случае обрезание выполняется поэлементно по указанной оси.

Параметры:
lowerfloat или array-like, по умолчанию None

Минимальное пороговое значение. Все значения ниже этого порога будут установлены на него. Пропущенный порог (например, NA) не будет обрезать значение.

upperfloat или array-like, по умолчанию None

Максимальное пороговое значение. Все значения выше этого порога будут установлены в него. Отсутствующий порог (например, NA) не будет обрезать значение.

ось{{0 или ‘index’, 1 или ‘columns’, None}}, по умолчанию None

Выровнять объект с нижней и верхней границами вдоль заданной оси. Для Series этот параметр не используется и по умолчанию равен None.

inplacebool, по умолчанию False

Выполнять ли операцию на месте на данных.

*args, **kwargs

Дополнительные ключевые слова не имеют эффекта, но могут быть приняты для совместимости с numpy.

Возвращает:
Series или DataFrame или None

Тот же тип, что и у вызывающего объекта, со значениями за пределами границ clip замененными или None, если inplace=True.

Смотрите также

Series.clip

Обрезать значения на пороге ввода в серии.

DataFrame.clip

Обрезать значения по входному порогу в dataframe.

numpy.clip

Обрезать (ограничить) значения в массиве.

Примеры

>>> data = {'col_0': [9, -3, 0, -1, 5], 'col_1': [-2, -7, 6, 8, -5]}
>>> df = pd.DataFrame(data)
>>> df
   col_0  col_1
0      9     -2
1     -3     -7
2      0      6
3     -1      8
4      5     -5

Обрезает по столбцу, используя нижний и верхний пороги:

>>> df.clip(-4, 6)
   col_0  col_1
0      6     -2
1     -3     -4
2      0      6
3     -1      6
4      5     -4

Обрезка с использованием определённых нижних и верхних порогов для каждого столбца:

>>> df.clip([-2, -1], [4, 5])
    col_0  col_1
0      4     -1
1     -2     -1
2      0      5
3     -1      5
4      4     -1

Обрезает с использованием конкретных нижнего и верхнего пороговых значений для каждого элемента столбца:

>>> t = pd.Series([2, -4, -1, 6, 3])
>>> t
0    2
1   -4
2   -1
3    6
4    3
dtype: int64
>>> df.clip(t, t + 4, axis=0)
   col_0  col_1
0      6      2
1     -3     -4
2      0      3
3      6      8
4      5      3

Обрезка с использованием конкретного нижнего порога для каждого элемента столбца, с пропущенными значениями:

>>> t = pd.Series([2, -4, np.nan, 6, 3])
>>> t
0    2.0
1   -4.0
2    NaN
3    6.0
4    3.0
dtype: float64
>>> df.clip(t, axis=0)
col_0  col_1
0      9      2
1     -3     -4
2      0      6
3      6      8
4      5      3