Calcular percentil em Python
-
Calcule o percentil em Python usando o pacote
scipy
-
Calcule o percentil em Python usando o pacote
NumPy
-
Calcule o percentil em Python usando o pacote
math
-
Calcule o percentil em Python usando o pacote
statistics
- Calcule o percentil em Python usando o método de interpolação linear do NumPy
- Calcule o percentil em Python usando o método de interpolação inferior do NumPy
- Calcule o percentil em Python usando o método de interpolação superior do NumPy
- Calcule o percentil em Python usando o método de interpolação de ponto médio do NumPy
Os percentis indicam a porcentagem de pontuações que ficam abaixo de um determinado valor. Um indivíduo com QI de 120, por exemplo, está no percentil 91, o que significa que seu QI é maior do que 91% das outras pessoas.
Este artigo irá discutir alguns métodos para calcular percentil em Python.
Calcule o percentil em Python usando o pacote scipy
Este pacote calculará a pontuação da série de entrada em um determinado percentil. A sintaxe da função scoreatpercentile()
é fornecida abaixo:
scipy.stats.scoreatpercentile(
a, per, limit=(), interpolation_method="fraction", axis=None
)
Na função scoreatpercentile()
, o parâmetro a
representa un array 1-D e per
especifica o percentil que varia de 0 a 100. Os outros dois parâmetros são opcionais. A biblioteca NumPy
é usada para obter os números sobre os quais calculamos o percentil.
O código de exemplo completo é fornecido abaixo.
from scipy import stats
import numpy as np
array = np.arange(100)
percentile = stats.scoreatpercentile(array, 50)
print("The percentile is:", percentile)
Resultado:
The percentile is: 49.5
Calcule o percentil em Python usando o pacote NumPy
Este pacote possui uma função percentile()
que calculará o percentil de determinado array. A sintaxe da função percentile()
é fornecida abaixo.
numpy.percentile(
a,
q,
axis=None,
out=None,
overwrite_input=False,
interpolation="linear",
keepdims=False,
)
O parâmetro q
representa o número do cálculo do percentil. a
representa un array, enquanto os outros parâmetros são opcionais.
O código de exemplo completo é fornecido abaixo.
import numpy as np
arry = np.array([4, 6, 8, 10, 12])
percentile = np.percentile(arry, 50)
print("The percentile is:", percentile)
Resultado:
The percentile is: 8.0
Calcule o percentil em Python usando o pacote math
O pacote math
com a sua função básica - ceil
pode ser usado para calcular diferentes percentis.
O código de exemplo completo é fornecido abaixo.
import math
arry = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
def calculate_percentile(arry, percentile):
size = len(arry)
return sorted(arry)[int(math.ceil((size * percentile) / 100)) - 1]
percentile_25 = calculate_percentile(arry, 25)
percentile_50 = calculate_percentile(arry, 50)
percentile_75 = calculate_percentile(arry, 75)
print("The 25th percentile is:", percentile_25)
print("The 50th percentile is:", percentile_50)
print("The 75th percentile is:", percentile_75)
O math.ceil(x)
arredonda o valor e retorna o menor inteiro maior ou igual a x
, enquanto a função sorted
ordena a matriz.
Resultado:
The 25th percentile is: 3
The 50th percentile is: 5
The 75th percentile is: 8
Calcule o percentil em Python usando o pacote statistics
A função quantiles()
no pacote statistics
é usada para quebrar os dados em probabilidades iguais e retornar uma lista de distribuição de n-1
. A sintaxe desta função é fornecida a seguir.
statistics.quantiles(data, *, n=4, method='exclusive')
O código de exemplo completo é fornecido abaixo.
from statistics import quantiles
data = [1, 2, 3, 4, 5]
percentle = quantiles(data, n=4)
print("The Percentile is:", percentle)
Resultado:
The Percentile is: [1.5, 3.0, 4.5]
Calcule o percentil em Python usando o método de interpolação linear do NumPy
Podemos calcular diferentes percentis usando o modo de interpolação. Os modos de interpolação são linear
, lower
, higher
, midpoint
e nearest
. Essas interpolações são usadas quando os percentis estão entre dois pontos de dados, i
e j
. Quando o valor do percentil é i
, é o modo de interpolação inferior, j
representa o modo de interpolação superior e i + (j - i) * fração
representa o modo linear onde fração
indica o índice rodeado por i
E j
.
O código de exemplo completo para o modo de interpolação linear é fornecido abaixo.
import numpy as np
arry = np.array([1, 2, 3, 4, 5, 6, 7, 8, 9, 10])
print("percentiles using interpolation = ", "linear")
percentile_10 = np.percentile(arry, 10, interpolation="linear")
percentile_50 = np.percentile(arry, 50, interpolation="linear")
percentile_75 = np.percentile(arry, 75, interpolation="linear")
print(
"percentile_10 = ",
percentile_10,
", median = ",
percentile_50,
" and percentile_75 = ",
percentile_75,
)
Usamos a função numpy.percentile()
com o parâmetro adicional interpolation
. Você pode ver que obtemos valores flutuantes para esta interpolação.
Resultado:
percentiles using interpolation = linear
percentile_10 = 1.9 , median = 5.5 and percentile_75 = 7.75
Calcule o percentil em Python usando o método de interpolação inferior do NumPy
O código de exemplo completo para o modo de interpolação inferior é fornecido abaixo.
import numpy as np
arry = np.array([1, 2, 3, 4, 5, 6, 7, 8, 9, 10])
print("percentiles using interpolation = ", "lower")
percentile_10 = np.percentile(arry, 10, interpolation="lower")
percentile_50 = np.percentile(arry, 50, interpolation="lower")
percentile_75 = np.percentile(arry, 75, interpolation="lower")
print(
"percentile_10 = ",
percentile_10,
", median = ",
percentile_50,
" and percentile_75 = ",
percentile_75,
)
Resultado:
percentiles using interpolation = lower
percentile_10 = 1 , median = 5 and percentile_75 = 7
Você pode ver que o percentil final é desviado para o valor mais baixo.
Calcule o percentil em Python usando o método de interpolação superior do NumPy
Este método fornecerá percentis do array fornecida ao maior valor de arredondamento.
O código de exemplo completo para modo de interpolação superior é fornecido abaixo.
import numpy as np
arry = np.array([1, 2, 3, 4, 5, 6, 7, 8, 9, 10])
print("percentiles using interpolation = ", "higher")
percentile_10 = np.percentile(arry, 10, interpolation="higher")
percentile_50 = np.percentile(arry, 50, interpolation="higher")
percentile_75 = np.percentile(arry, 75, interpolation="higher")
print(
"percentile_10 = ",
percentile_10,
", median = ",
percentile_50,
" and percentile_75 = ",
percentile_75,
)
Resultado:
percentiles using interpolation = higher
percentile_10 = 2 , median = 6 and percentile_75 = 8
Calcule o percentil em Python usando o método de interpolação de ponto médio do NumPy
Este método fornecerá pontos médios dos valores percentuais.
O código de exemplo completo para o modo de interpolação de ponto médio é fornecido abaixo.
import numpy as np
arry = np.array([1, 2, 3, 4, 5, 6, 7, 8, 9, 10])
print("percentiles using interpolation = ", "midpoint")
percentile_10 = np.percentile(arry, 10, interpolation="midpoint")
percentile_50 = np.percentile(arry, 50, interpolation="midpoint")
percentile_75 = np.percentile(arry, 75, interpolation="midpoint")
print(
"percentile_10 = ",
percentile_10,
", median = ",
percentile_50,
" and percentile_75 = ",
percentile_75,
)
Resultado:
percentiles using interpolation = midpoint
percentile_10 = 1.5 , median = 5.5 and percentile_75 = 7.5
Artigo relacionado - Python Math
- Calcular fatorial em Python
- Calcule o inverso do cosseno em Python
- Calcule o inverso multiplicativo modular em Python
- Multiplicação recursiva em Python
- Encontre a raiz Nº do valor X em Python
- Divisão de teto em Python