Como calcular percentis em python: com exemplos


O enésimo percentil de um conjunto de dados é o valor que corta os n por cento superiores dos valores de dados quando todos os valores são classificados do menor para o maior.

Por exemplo, o 90º percentil de um conjunto de dados é o valor que separa os 90% inferiores dos valores de dados dos 10% superiores dos valores de dados.

Podemos calcular percentis rapidamente em Python usando a função numpy.percentile() , que usa a seguinte sintaxe:

numpy.percentil(a, q)

Ouro:

  • a: Tabela de valores
  • q: Percentil ou sequência de percentis a calcular, que deve estar entre 0 e 100 inclusive.

Este tutorial explica como usar esta função para calcular percentis em Python.

Como encontrar os percentis de uma tabela

O código a seguir demonstra como encontrar percentis diferentes para um determinado array em 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])

Como encontrar percentis de uma coluna DataFrame

O código a seguir mostra como encontrar o valor do 95º percentil para uma única coluna DataFrame do pandas:

 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

Como encontrar percentis de múltiplas colunas do DataFrame

O código a seguir mostra como encontrar o valor do 95º percentil para várias colunas em um DataFrame do pandas:

 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

Observe que pudemos usar a função pandas quantile() nos exemplos acima para calcular percentis.

Relacionado: Como calcular percentis em R (com exemplos)

Add a Comment

O seu endereço de email não será publicado. Campos obrigatórios marcados com *