Spec-Zone.ru › pandas 1

pandas.DataFrame.quantile

DataFrame.quantile(q=0.5, axis=0, numeric_only=_NoDefault.no_default, interpolation='linear', method='single')[source]

Возвращает значения в заданном квантиле по указанной оси.

Параметры
q:float или массив, по умолчанию 0.5 (50% квантиль)

Значение от 0 <= q <= 1, квантиль(и) для вычисления.

axis:{0 или ‘индекс’, 1 или ‘колонки’}, по умолчанию 0

Равно 0 или ‘индекс’ для строчных, 1 или ‘колонки’ для столбцовых.

numeric_only:bool, по умолчанию True

Если False, квантиль данных типа datetime и timedelta также будет вычисляться.

Устарело начиная с версии 1.5.0: Значение по умолчанию numeric_only будет False в будущей версии pandas.

interpolation:{‘линейный’, ‘нижний’, ‘верхний’, ‘середина’, ‘ближайший’}

Этот необязательный параметр определяет метод интерполяции для использования, когда искомый квантиль находится между двумя точками данных i и j:

  • линейный: i + (j - i) * дробная_часть, где дробная_часть - дробная часть индекса, ограниченная i и j.

  • нижний: i.

  • верхний: j.

  • ближайший: i или j, какой из них ближе.

  • середина: (i + j) / 2.

method:{‘single’, ‘table’}, по умолчанию ‘single’

Вычислять квантили по столбцам (‘single’) или по всем столбцам (‘table’). При ‘table’ допустимы только методы интерполяции ‘ближайший’, ‘нижний’ и ‘верхний’.

Возвращает
Series или DataFrame
Если q является массивом, будет возвращен DataFrame, где

индекс - q, столбцы - столбцы self, а значения - квантили.

Если q является числом с плавающей точкой, будет возвращена Series, где

индекс - столбцы self, а значения - квантили.

См. также

core.window.rolling.Rolling.quantile

Квантиль скользящего окна.

numpy.percentile

Функция NumPy для вычисления перцентиля.

Примеры

>>> df = pd.DataFrame(np.array([[1, 1], [2, 10], [3, 100], [4, 100]]),
...                   columns=['a', 'b'])
>>> df.quantile(.1)
a    1.3
b    3.7
Name: 0.1, dtype: float64
>>> df.quantile([.1, .5])
       a     b
0.1  1.3   3.7
0.5  2.5  55.0

Указание method=’table’ вычислит квантиль по всем столбцам.

>>> df.quantile(.1, method="table", interpolation="nearest")
a    1
b    1
Name: 0.1, dtype: int64
>>> df.quantile([.1, .5], method="table", interpolation="nearest")
     a    b
0.1  1    1
0.5  3  100

Указание numeric_only=False также вычислит квантиль данных типа datetime и timedelta.

>>> df = pd.DataFrame({'A': [1, 2],
...                    'B': [pd.Timestamp('2010'),
...                          pd.Timestamp('2011')],
...                    'C': [pd.Timedelta('1 days'),
...                          pd.Timedelta('2 days')]})
>>> df.quantile(0.5, numeric_only=False)
A                    1.5
B    2010-07-02 12:00:00
C        1 days 12:00:00
Name: 0.5, dtype: object

© 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.quantile.html

Spec-Zone.ru

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