РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
207 of 541 menu

Функция percentile

Функция percentile вычисляет указанный процентиль (квантиль) для одномерного или многомерного массива. Первым параметром передаётся массив данных, вторым - значение процентиля от 0 до 100. Функция поддерживает несколько методов интерполяции для случаев, когда процентиль попадает между двумя значениями данных.

Синтаксис

np.percentile(arr, q, axis=None, method='linear')

Параметры функции:

  • arr - входной массив данных
  • q - значение процентиля от 0 до 100, либо список значений
  • axis - ось для вычисления (по умолчанию вычисляется по всему массиву)
  • method - метод интерполяции (по умолчанию 'linear')

Пример

Вычислим 50-й процентиль (медиану) для одномерного массива:

import numpy as np arr = np.array([1, 2, 3, 4, 5, 6, 7, 8, 9, 10]) res = np.percentile(arr, 50) print(res)

Результат выполнения кода:

5.5

Функция возвращает среднее значение между 5 и 6, так как массив содержит чётное количество элементов.

Пример

Вычислим несколько процентилей одновременно, передав список значений:

import numpy as np arr = np.array([1, 2, 3, 4, 5, 6, 7, 8, 9, 10]) res = np.percentile(arr, [25, 50, 75]) print(res)

Результат выполнения кода:

[3.25 5.5 7.75]

Получен массив из трёх значений: первый квартиль, медиана и третий квартиль.

Пример

Вычислим процентили по строкам двумерного массива с помощью параметра axis:

import numpy as np arr = np.array([[1, 2, 3, 4, 5], [6, 7, 8, 9, 10], [11, 12, 13, 14, 15]]) res = np.percentile(arr, 50, axis=1) print(res)

Результат выполнения кода:

[ 3. 8. 13.]

Для каждой строки вычислена медиана (50-й процентиль) независимо.

Пример

Используем разные методы интерполяции для вычисления 25-го процентиля:

import numpy as np arr = np.array([1, 2, 3, 4, 5, 6, 7, 8]) res_linear = np.percentile(arr, 25, method='linear') res_lower = np.percentile(arr, 25, method='lower') res_higher = np.percentile(arr, 25, method='higher') print(res_linear, res_lower, res_higher)

Результат выполнения кода:

2.75 2 3

Метод linear даёт интерполированное значение, lower возвращает нижнее из двух ближайших значений, а higher - верхнее.

Смотрите также

  • функцию quantile,
    которая вычисляет квантили от 0 до 1
  • функцию median,
    которая вычисляет медиану массива
  • функцию mean,
    которая вычисляет среднее арифметическое
  • функцию std,
    которая вычисляет стандартное отклонение
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить