numpy.quantile()

Функция numpy.quantile() вычисляет квантили массива — значения, ниже которых попадает заданная доля данных (от 0 до 1). По сути это percentile, но с диапазоном [0, 1] вместо [0, 100].

Сигнатура

numpy.quantile(a, q, axis=None, out=None, overwrite_input=False, method='linear', keepdims=False)

Параметры

  • a — входной массив.

  • q — квантиль или список квантилей в диапазоне [0, 1].

  • axis — ось вычисления.

  • method — алгоритм интерполяции.

  • keepdims — сохранять размерность.

Возвращает

Скаляр или ndarray квантилей.

Пример 1. Медиана как квантиль 0.5

import numpy as np

a = np.array([10, 20, 30, 40, 50])
print(np.quantile(a, 0.5))
30.0

Пример 2. Квартили

import numpy as np

a = np.array([1, 2, 3, 4, 5, 6, 7, 8])
print(np.quantile(a, [0.25, 0.5, 0.75]))
[2.75 4.5  6.25]

Пример 3. Метод „lower“

import numpy as np

a = np.array([1, 2, 3, 4])
print(np.quantile(a, 0.5, method='lower'))
2

Пример 4. Порог для выбросов

import numpy as np

# Время отклика датчика, мс
t = np.array([12, 11, 13, 10, 12, 11, 250, 12, 11, 12])
threshold = np.quantile(t, 0.99)
print(f"99% значений ≤ {threshold:.1f} мс")
99% значений ≤ 228.58 мс

Пример 5. Квантили по столбцам

import numpy as np

data = np.array([[10, 20],
                 [30, 40],
                 [50, 60],
                 [70, 80]])
print(np.quantile(data, 0.5, axis=0))
[40. 50.]

См. также

Примечание

Лицензия и источники

Техническое описание функции адаптировано из официальной документации NumPy (https://numpy.org/doc/stable/), BSD-3-Clause License. Примеры и пояснения — © AlashEd Wiki.