Як обчислити процентилі в python: із прикладами


N-й процентиль набору даних – це значення, яке відсікає верхні n відсотків значень даних, коли всі значення відсортовано від найменшого до найбільшого.

Наприклад, 90-й процентиль набору даних — це значення, яке відокремлює нижні 90% значень даних від 10% верхніх значень даних.

Ми можемо швидко обчислити процентили в Python за допомогою функції numpy.percentile() , яка використовує такий синтаксис:

numpy.percentile(a, q)

золото:

  • a: Таблиця значень
  • q: Процентиль або послідовність процентилів для обчислення, які мають бути від 0 до 100 включно.

Цей посібник пояснює, як використовувати цю функцію для обчислення процентилів у Python.

Як знайти процентиль таблиці

Наступний код демонструє, як знайти різні процентилі для даного масиву в Python:

 import numpy as np

#make this example reproducible
n.p. random . seeds (0)

#create array of 100 random integers distributed between 0 and 500
data = np. random . randint (0, 500, 100)

#find the 37th percentile of the array
n.p. percentile (data, 37)

173.26

#Find the quartiles (25th, 50th, and 75th percentiles) of the array
n.p. percentile (data, [25, 50, 75])

array([116.5, 243.5, 371.5])

Як знайти процентиль стовпця DataFrame

Наступний код показує, як знайти значення 95-го процентиля для одного стовпця pandas DataFrame:

 import numpy as np 
import pandas as pd

#createDataFrame
df = pd.DataFrame({'var1': [25, 12, 15, 14, 19, 23, 25, 29, 33, 35],
                   'var2': [5, 7, 7, 9, 12, 9, 9, 4, 14, 15],
                   'var3': [11, 8, 10, 6, 6, 5, 9, 12, 13, 16]})

#find 90th percentile of var1 column
n.p. percentile (df. var1 , 95)

34.1

Як знайти процентилі кількох стовпців DataFrame

Наступний код показує, як знайти значення 95-го процентиля для кількох стовпців у pandas DataFrame:

 import numpy as np 
import pandas as pd

#createDataFrame
df = pd.DataFrame({'var1': [25, 12, 15, 14, 19, 23, 25, 29, 33, 35],
                   'var2': [5, 7, 7, 9, 12, 9, 9, 4, 14, 15],
                   'var3': [11, 8, 10, 6, 6, 5, 9, 12, 13, 16]})

#find 95th percentile of each column
df. quantile (.95)

var1 34.10
var2 14.55
var3 14.65

#find 95th percentile of just columns var1 and var2
df[[' var1 ', ' var2 ']]. quantile (.95)

var1 34.10
var2 14.55

Зверніть увагу, що ми змогли використати функцію pandas quantile() у наведених вище прикладах для обчислення процентилів.

Пов’язане: Як обчислити процентили в R (з прикладами)

Додати коментар

Ваша e-mail адреса не оприлюднюватиметься. Обов’язкові поля позначені *