Pandas Series Series.value_counts() Funktion

Suraj Joshi 30 Januar 2023
  1. Syntax der Methode pandas.Series.value_counts():
  2. Beispiel-Codes: Zählen der Vorkommen eindeutiger Elemente in Pandas-Serien unter Verwendung der Methode Series.value_counts()
  3. Beispiel-Codes: Setzen Sie normalize=True in Series.value_counts() Methode, um relative Häufigkeiten von Elementen zu erhalten
  4. Beispiel-Codes: Setzen Sie ascending=True in der Methode Series.value_counts(), um Elemente basierend auf dem Frequenzwert in aufsteigender Reihenfolge zu sortieren
  5. Beispiel-Codes: Setzen Sie den Parameter bins in der Methode Series.value_counts(), um die Anzahl der Werte zu erhalten, die in halboffenen Bins liegen
  6. Beispiel-Codes: Setzen Sie dropna=False in der Methode Series.value_counts() zum Zählen von NaN
Pandas Series Series.value_counts() Funktion

Die Methode pandas.Series.value_counts() zählt die Anzahl der Vorkommnisse jedes eindeutigen Elements in der Series.

Syntax der Methode pandas.Series.value_counts():

Series.value_counts(normalize=False, sort=True, ascending=False, bins=None, dropna=True)

Parameter

normalize Boolesch. Relative Häufigkeiten der eindeutigen Werte (normalize=True) oder absolute Häufigkeiten der eindeutigen Werte (normalize=False).
sort Boolesch. Sortieren Sie die Elemente basierend auf Häufigkeiten(sort=True) oder lassen Sie das Series-Objekt unsortiert(sort=False)
ascending Boolesch. Sortieren Sie die Werte in aufsteigender Reihenfolge (ascending=True) oder absteigender Reihenfolge (ascending=False)
bins Ganze Zahl. Anzahl der Partitionen, in die der Wertebereich des Series-Objekts unterteilt ist
dropna Boolesch. Einschließen von Zählungen von NaN(dropna=False) oder Ausschließen von Zählungen von NaN(dropna=True)

Zurück

Sie gibt ein Series-Objekt zurück, das sich aus der Anzahl der eindeutigen Werte zusammensetzt.

Beispiel-Codes: Zählen der Vorkommen eindeutiger Elemente in Pandas-Serien unter Verwendung der Methode Series.value_counts()

import pandas as pd
import numpy as np

df = pd.DataFrame({'X': [1, 2, 3, np.nan, 3],
                   'Y': [4, np.nan, 8, np.nan, 3]})
print("DataFrame:")
print(df)

absolute_counts=df["X"].value_counts()

print("Frequencies of elements of X column:")
print(absolute_counts)

Ausgabe:

DataFrame:
     X    Y
0  1.0  4.0
1  2.0  NaN
2  3.0  8.0
3  NaN  NaN
4  3.0  3.0
Frequencies of elements of X column:
3.0    2
2.0    1
1.0    1
Name: X, dtype: int64 

Das Serienobjekt absolute_counts gibt die Anzahl jedes eindeutigen Elements der Spalte X unter Verwendung der Methode Series.value_counts() an.

Series.value_counts() zählt NaN standardmäßig nicht. Wir werden in den folgenden Abschnitten einführen, wie man es zählt.

Beispiel-Codes: Setzen Sie normalize=True in Series.value_counts() Methode, um relative Häufigkeiten von Elementen zu erhalten

Wenn wir normalize=True in der Methode Series.value_counts() setzen, erhalten wir relative Häufigkeiten aller eindeutigen Elemente im Objekt Series.

import pandas as pd
import numpy as np

df = pd.DataFrame({'X': [1, 2, 3, np.nan, 3],
                   'Y': [4, np.nan, 8, np.nan, 3]})
print("DataFrame:")
print(df)

relative_counts=df["X"].value_counts(normalize=True)

print("Relative Frequencies of elements of X column:")
print(relative_counts)

Ausgabe:

DataFrame:
     X    Y
0  1.0  4.0
1  2.0  NaN
2  3.0  8.0
3  NaN  NaN
4  3.0  3.0
Frequencies of elements of X column:
3.0    0.50
2.0    0.25
1.0    0.25
Name: X, dtype: float64

Das Serienobjekt relative_counts gibt die relativen Häufigkeiten jedes eindeutigen Elements der Spalte X an.

Relative Häufigkeiten erhält man durch Division aller absoluten Häufigkeiten durch die Summe der absoluten Häufigkeiten.

Beispiel-Codes: Setzen Sie ascending=True in der Methode Series.value_counts(), um Elemente basierend auf dem Frequenzwert in aufsteigender Reihenfolge zu sortieren

Wenn wir ascending=True in der Methode Series.value_counts() setzen, erhalten wir das Objekt Series, dessen Elemente basierend auf Häufigkeitswerten in aufsteigender Reihenfolge sortiert sind.

Standardmäßig werden die Werte im Series-Objekt, die von der Methode Series.value_counts() zurückgegeben werden, in absteigender Reihenfolge basierend auf den Häufigkeitswerten sortiert.

import pandas as pd
import numpy as np

df = pd.DataFrame({'X': [1, 2, 3, np.nan, 3],
                   'Y': [4, np.nan, 8, np.nan, 3]})
print("DataFrame:")
print(df)

sorted_counts=df["X"].value_counts(ascending=True)
print("Frequencies of elements of X column:")
print(sorted_counts)

Ausgabe:

DataFrame:
     X    Y
0  1.0  4.0
1  2.0  NaN
2  3.0  8.0
3  NaN  NaN
4  3.0  3.0
Frequencies of elements of X column:
1.0    1
2.0    1
3.0    2
Name: X, dtype: int64

Sie gibt die Zählungen jedes eindeutigen Objekts in der Spalte X an, wobei die Häufigkeitswerte in aufsteigender Reihenfolge sortiert sind.

Beispiel-Codes: Setzen Sie den Parameter bins in der Methode Series.value_counts(), um die Anzahl der Werte zu erhalten, die in halboffenen Bins liegen

import pandas as pd
import numpy as np

df = pd.DataFrame({'X': [1, 2, 3, np.nan, 3, 4, 5],
                   'Y': [4, np.nan, 8, np.nan, 3, 2, 1]})
print("DataFrame:")
print(df)

counts=df["X"].value_counts(bins=3)
print("Frequencies:")
print(counts)

Ausgabe:

DataFrame:
     X    Y
0  1.0  4.0
1  2.0  NaN
2  3.0  8.0
3  NaN  NaN
4  3.0  3.0
5  4.0  2.0
6  5.0  1.0
Frequencies:
(3.667, 5.0]      2
(2.333, 3.667]    2
(0.995, 2.333]    2
Name: X, dtype: int64

Sie teilt den Wertebereich in der Series, d.h. Spalte X in drei Teile und gibt die Anzahl der Werte zurück, die in jedem halb geöffneten Behälter liegen.

Beispiel-Codes: Setzen Sie dropna=False in der Methode Series.value_counts() zum Zählen von NaN

Wenn wir dropna=False in der Methode Series.value_counts() setzen, erhalten wir auch Zählungen von NaN-Werten.

import pandas as pd
import numpy as np

df = pd.DataFrame({'X': [1, 2, 3, np.nan, 3],
                   'Y': [4, np.nan, 8, np.nan, 3]})
print("DataFrame:")
print(df)

counts=df["Y"].value_counts(dropna=False)

print("Frequencies:")
print(counts)

Ausgabe:

DataFrame:
     X    Y
0  1.0  4.0
1  2.0  NaN
2  3.0  8.0
3  NaN  NaN
4  3.0  3.0
Frequencies:
NaN    2
3.0    1
8.0    1
4.0    1
Name: Y, dtype: int64

Sie gibt die Anzahl jedes Elements in der Spalte Y des DataFrame mit der Anzahl der NaN Werte an.

Suraj Joshi avatar Suraj Joshi avatar

Suraj Joshi is a backend software engineer at Matrice.ai.

LinkedIn

Verwandter Artikel - Pandas Series