Pandas Series Series.value_counts() Fonction

Suraj Joshi 30 janvier 2023
  1. Syntaxe de pandas.Series.value_counts():
  2. Exemples de codes: compter les fréquences d’éléments uniques dans la série Pandas à l’aide de la méthode Series.value_counts()
  3. Exemples de codes: définissez normalize = True dans la méthode Series.value_counts() pour obtenir les fréquences relatives des éléments
  4. Exemples de codes: définissez ascending = True dans la méthode Series.value_counts() pour trier les éléments en fonction de la valeur de fréquence dans l’ordre croissant
  5. Exemples de codes: définissez le paramètre bins dans la méthode Series.value_counts() pour obtenir le nombre de valeurs se trouvant dans des compartiments semi-ouverts
  6. Exemples de codes: définissez dropna = False dans la méthode Series.value_counts() pour compter NaN
Pandas Series Series.value_counts() Fonction

La méthode pandas.Series.value_counts() compte le nombre d’occurrences de chaque élément unique dans la Series.

Syntaxe de pandas.Series.value_counts():

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

Paramètres

normalize Booléen. Fréquences relatives des valeurs uniques (normalize = True) ou fréquences absolues des valeurs uniques (normalize = False).
sort Booléen. Trier les éléments en fonction des fréquences (sort = True) ou laisser l’objet Series non trié (sort = False)
ascending Booléen. Trier les valeurs par ordre croissant (ascending = True) ou décroissant (ascending = False)
bins Entier. Nombre de partitions dans lesquelles la plage de valeurs de l’objet Series est divisée en
dropna Booléen. Inclure les comptes de NaN (dropna = False) ou exclure les comptes de NaN (dropna = True)

Revenir

Il retourne un objet Series composé du nombre de valeurs uniques.

Exemples de codes: compter les fréquences d’éléments uniques dans la série Pandas à l’aide de la méthode 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)

Production:

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 

L’objet Series absolute_counts donne le nombre de chaque élément unique de la colonne X en utilisant la méthode Series.value_counts().

Series.value_counts() ne compte pas NaN par défaut. Nous expliquerons comment le compter dans les sections suivantes.

Exemples de codes: définissez normalize = True dans la méthode Series.value_counts() pour obtenir les fréquences relatives des éléments

Si nous définissons normalize = True dans la méthode Series.value_counts(), nous obtenons les fréquences relatives de tous les éléments uniques dans l’objet 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)

Production:

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

L’objet Series relative_counts donne les fréquences relatives de chaque élément unique de la colonne X.

Les fréquences relatives sont obtenues en divisant toutes les fréquences absolues par la somme des fréquences absolues.

Exemples de codes: définissez ascending = True dans la méthode Series.value_counts() pour trier les éléments en fonction de la valeur de fréquence dans l’ordre croissant

Si nous définissons ascending = True dans la méthode Series.value_counts(), nous obtenons l’objet Series avec ses éléments triés en fonction des valeurs de fréquence dans l’ordre croissant.

Par défaut, les valeurs de l’objet Series renvoyées par la méthode Series.value_counts() sont triées par ordre décroissant en fonction des valeurs de fréquence.

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)

Production:

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

Il donne le nombre de chaque objet unique dans la colonne X avec des valeurs de fréquence triées par ordre croissant.

Exemples de codes: définissez le paramètre bins dans la méthode Series.value_counts() pour obtenir le nombre de valeurs se trouvant dans des compartiments semi-ouverts

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)

Production:

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

Il divise la plage de valeurs de la série, c’est-à-dire la colonne X en trois parties et retourne le nombre de valeurs se trouvant dans chaque casier semi-ouvert.

Exemples de codes: définissez dropna = False dans la méthode Series.value_counts() pour compter NaN

Si nous définissons dropna = false dans la méthode Series.value_counts(), nous obtenons également le nombre de valeurs NaN.

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)

Production:

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

Il donne le nombre de chaque élément dans la colonne Y de DataFrame avec le nombre de valeurs NaN.

Auteur: Suraj Joshi
Suraj Joshi avatar Suraj Joshi avatar

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

LinkedIn

Article connexe - Pandas Series