Das n-te Perzentil eines Datensatzes ist der Wert, der die ersten n Prozent der Datenwerte abschneidet, wenn alle Werte vom kleinsten zum größten sortiert sind.

Das 90. Perzentil eines Datasets ist beispielsweise der Wert, der die unteren 90% der Datenwerte von den oberen 10% der Datenwerte abschneidet.

Mit der Funktion numpy.percentile(), die die folgende Syntax verwendet, können wir Perzentile in Python schnell berechnen:

numpy.percentile(a, q)

wo:

  • a: Array von Werten
  • q: Perzentil oder Folge von zu berechnenden Perzentilen, die zwischen 0 und 100 einschließlich liegen müssen.

In diesem Tutorial wird erklärt, wie Sie mit dieser Funktion Perzentile in Python berechnen.

So finden Sie Perzentile eines Arrays

Der folgende Code zeigt, wie verschiedene Perzentile für ein bestimmtes Array in Python gefunden werden:

import numpy as np

#Machen Sie dieses Beispiel reproduzierbar
np.random.seed(0)

#Erstellen Sie ein Array mit 100 zufälligen Ganzzahlen, die zwischen 0 und 500 verteilt sind
data = np.random.randint(0, 500, 100)

#Finden Sie das 37. Perzentil des Arrays
np.percentile(data, 37)

173.26

#Finden Sie die Quartile (25., 50. und 75. Perzentil) des Arrays
np.percentile(data, [25, 50, 75])

array([116.5, 243.5, 371.5])

So finden Sie Perzentile einer DataFrame-Spalte

Der folgende Code zeigt, wie der 95. Perzentilwert für eine einzelne Pandas-DataFrame-Spalte ermittelt wird:

import numpy as np 
import pandas as pd

# Dataframe erstellen
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]})

# 90. Perzentil der Spalte var1 finden
np.percentile(df.var1, 95)

34.1

So finden Sie Perzentile mehrerer DataFrame-Spalten

Der folgende Code zeigt, wie der 95. Perzentilwert für mehrere Spalten in einem Pandas-DataFrame ermittelt wird:

import numpy as np 
import pandas as pd

# Dataframe erstellen
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]})

#Finden Sie das 95. Perzentil jeder Spalte
df.quantile(.95)

var1    34.10
var2    14.55
var3    14.65

#Finden Sie das 95. Perzentil nur der Spalten var1 und var2
df[['var1', 'var2']].quantile(.95)

var1    34.10
var2    14.55

Beachten Sie, dass wir in den obigen Beispielen die pandas Funktion quantile() verwenden konnten, um Perzentile zu berechnen.

Verwandt: Wie Perzentile in R berechnen (mit Beispielen)

Statistik: Der Weg zur Datenanalyse

* Amazon Affiliate Link


Das könnte Sie auch interessieren: