Spec-Zone.ru › pandas 0.21

pandas.qcut

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

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

Параметры:

x : одномерный массив ndarray или Series

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

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

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

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

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

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

precision : int, необязательно

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

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

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

Добавлена в версии 0.20.0.

Возвращаемое значение:

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

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

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

Возвращается только если 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.21.1/generated/pandas.qcut.html

Spec-Zone.ru

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