Les pandas comptent les valeurs uniques

Suraj Joshi 30 janvier 2023
  1. Compter les valeurs uniques dans une DataFrame en utilisant Series.value_counts()
  2. Compter les valeurs uniques dans un DataFrame en utilisant DataFrame.nunique()
Les pandas comptent les valeurs uniques

Ce tutoriel explique comment nous pouvons obtenir le compte de toutes les valeurs uniques dans un DataFrame en utilisant les méthodes Series.value_counts() et DataFrame.nunique().

import pandas as pd

patients_df = pd.DataFrame(
    {
        "Name": ["Jennifer", "Travis", "Bob", "Emma", "Luna", "Anish"],
        "Date": [
            "2020-12-01",
            "2020-12-01",
            "2020-12-02",
            "2020-12-02",
            "2020-12-02",
            "2020-12-03",
        ],
        "Age": [17, 18, 17, 16, 18, 16],
    }
)

print(patients_df)

Production :

       Name        Date  Age
0  Jennifer  2020-12-01   17
1    Travis  2020-12-01   18
2       Bob  2020-12-02   17
3      Emma  2020-12-02   16
4      Luna  2020-12-02   18
5     Anish  2020-12-03   16 

Nous utiliserons le DataFrame patients_df, qui contient les noms des patients, leur date de rendez-vous et leur âge, pour expliquer comment nous pouvons obtenir le compte de toutes les valeurs uniques dans un DataFrame.

Compter les valeurs uniques dans une DataFrame en utilisant Series.value_counts()

import pandas as pd

patients_df = pd.DataFrame(
    {
        "Name": ["Jennifer", "Travis", "Bob", "Emma", "Luna", "Anish"],
        "Date": [
            "2020-12-01",
            "2020-12-01",
            "2020-12-02",
            "2020-12-02",
            "2020-12-02",
            "2020-12-03",
        ],
        "Age": [17, 18, 17, 16, 18, 16],
    }
)

print("The DataFrame is:")
print(patients_df, "\n")

print("No of appointments for each date:")
print(patients_df["Date"].value_counts())

Production :

The DataFrame is:
       Name        Date  Age
0  Jennifer  2020-12-01   17
1    Travis  2020-12-01   18
2       Bob  2020-12-02   17
3      Emma  2020-12-02   16
4      Luna  2020-12-02   18
5     Anish  2020-12-03   16 

No of appointments for each date:
2020-12-02    3
2020-12-01    2
2020-12-03    1
Name: Date, dtype: int64

Il affiche le nombre de chaque valeur unique de la colonne Date dans le DataFrame.

Compter les valeurs uniques dans un DataFrame en utilisant DataFrame.nunique()

import pandas as pd

patients_df = pd.DataFrame(
    {
        "Name": ["Jennifer", "Travis", "Bob", "Emma", "Luna", "Anish"],
        "Date": [
            "2020-12-01",
            "2020-12-01",
            "2020-12-02",
            "2020-12-02",
            "2020-12-02",
            "2020-12-03",
        ],
        "Age": [17, 18, 17, 16, 18, 16],
    }
)

print(patients_df, "\n")

print(patients_df.groupby("Date").Name.nunique())

Production :

       Name        Date  Age
0  Jennifer  2020-12-01   17
1    Travis  2020-12-01   18
2       Bob  2020-12-02   17
3      Emma  2020-12-02   16
4      Luna  2020-12-02   18
5     Anish  2020-12-03   16 

Date
2020-12-01    2
2020-12-02    3
2020-12-03    1
Name: Name, dtype: int64

Il divise le DataFrame en fonction de la valeur de la colonne Date, c’est-à-dire que les lignes ayant la même valeur de Date sont placées dans le même groupe et compte ensuite l’occurrence de chaque nom dans un groupe particulier pour connaître le nombre de chaque valeur unique de la colonne Date dans le DataFrame.

Auteur: Suraj Joshi
Suraj Joshi avatar Suraj Joshi avatar

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

LinkedIn