Spec-Zone.ru › pandas 1

pandas.DataFrame.clip

DataFrame.clip(lower=None, upper=None, axis=None, inplace=False, *args, **kwargs)[source]

Обрезка значений по входным порогам.

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

Параметры
lower:float или массивоподобный объект, по умолчанию None

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

upper:float или массивоподобный объект, по умолчанию None

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

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

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

inplace:bool, по умолчанию False

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

*args, **kwargs

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

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

Тип, аналогичный вызываемому объекту, с заменой значений, выходящих за пределы обрезки, или 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

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

>>> 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

© 2008–2022, AQR Capital Management, LLC, Lambda Foundry, Inc. and PyData Development Team
Licensed under the 3-clause BSD License.
https://pandas.pydata.org/pandas-docs/version/1.5.0/reference/api/pandas.DataFrame.clip.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API