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