Spec-Zone.ru › pandas 0.22

pandas.qcut

pandas.qcut(x, q, labels=None, retbins=False, precision=3, duplicates='raise') [source]

Функция дискретизации на основе квантилей. Разбивает переменную на равные по размеру интервалы, основанные на ранге или выборочных квантилях. Например, 1000 значений для 10 квантилей создадут объект Categorical, указывающий принадлежность к квантилю для каждой точки данных.

Параметры:

x : 1d ndarray или Series

q : целое число или массив квантилей

Количество квантилей. 10 для десятилетий, 4 для квартилей и т. д. В качестве альтернативы массив квантилей, например, [0, 0.25, 0.5, 0.75, 1.] для квартилей

labels : массив или булево значение, по умолчанию None

Используется в качестве меток для получившихся интервалов. Должен иметь такую же длину, как и получившиеся интервалы. Если False, возвращаются только целочисленные индикаторы интервалов.

retbins : bool, необязательно

Возвращать ли (bins, labels) или нет. Может быть полезно, если bins задано как скаляр.

precision : целое число, необязательно

Точность хранения и отображения меток интервалов

duplicates : {по умолчанию ‘raise’, ‘drop’}, необязательно

Если границы интервалов не уникальны, вызвать ValueError или удалить не уникальные.

Введено в версии 0.20.0.

Возвращает:

out : Categorical или Series или массив целых чисел, если labels равно False

Тип возвращаемого значения (Categorical или Series) зависит от входных данных: Series типа category, если входной параметр Series, в противном случае Categorical. Интервалы представлены как категории, когда возвращаются категориальные данные.

bins : массив чисел с плавающей точкой

Возвращается только если retbins равно True.

Примечания

Значения вне границ будут NA в получившемся объекте Categorical

Примеры

>>> pd.qcut(range(5), 4)
... 
[(-0.001, 1.0], (-0.001, 1.0], (1.0, 2.0], (2.0, 3.0], (3.0, 4.0]]
Categories (4, interval[float64]): [(-0.001, 1.0] < (1.0, 2.0] ...
>>> pd.qcut(range(5), 3, labels=["good", "medium", "bad"])
... 
[good, good, medium, bad, bad]
Categories (3, object): [good < medium < bad]
>>> pd.qcut(range(5), 4, labels=False)
array([0, 0, 1, 2, 3])

© 2008–2012, 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/0.22.0/generated/pandas.qcut.html

Spec-Zone.ru

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