Trier les valeurs d’une colonne

La méthode sort_values() de Pandas permet de trier les valeurs d’une colonne dans un DataFrame. Elle prend en paramètre le nom de la colonne par laquelle les données doivent être triées, ainsi qu’une option pour spécifier l’ordre du tri (ascendant ou descendant). Par défaut, le tri est effectué par ordre croissant (ascendant).

Fonctions :

  • sort_values(by='colonne')

    La méthode sort_values(by='colonne') permet de trier les valeurs d’une colonne spécifique dans un DataFrame. Vous pouvez trier les données de manière ascendante ou descendante en fonction de vos besoins. Cette méthode est particulièrement utile pour organiser des données en fonction de critères précis et effectuer des analyses plus claires.

    Importation :

    import pandas as pd

    Attributs :

    Paramètre Description
    by Le nom de la colonne sur laquelle effectuer le tri.
    ascending Booléen qui définit l'ordre du tri : True pour un tri ascendant (par défaut) et False pour un tri descendant.
    inplace Booléen qui permet de modifier le DataFrame en place. Si True, le DataFrame est modifié sans création d’une nouvelle copie. Par défaut, False.

    Exemple de code :

    import pandas as pd
    
    # Exemple de DataFrame
    data = {
        'nom': ['Alice', 'Bob', 'Charlie', 'David'],
        'âge': [24, 30, 35, 40],
        'score': [88, 92, 75, 85],
        'ville': ['Paris', 'Lyon', 'Marseille', 'Paris']
    }
    df = pd.DataFrame(data)
    
    # Trier les valeurs de la colonne 'âge' de manière ascendante
    df_ascendant = df.sort_values(by='âge', ascending=True)
    print("DataFrame trié par âge (ascendant) :")
    print(df_ascendant)
    
    # Trier les valeurs de la colonne 'score' de manière descendante
    df_descendant = df.sort_values(by='score', ascending=False)
    print("\nDataFrame trié par score (descendant) :")
    print(df_descendant)
    
    # Trier en place et modifier directement le DataFrame
    df.sort_values(by='nom', ascending=True, inplace=True)
    print("\nDataFrame trié par nom (ascendant) en place :")
    print(df)
    Résultat du code

    Explication du code :

    import pandas as pd importe la bibliothèque pandas, renommée en pd, pour manipuler des données tabulaires à l’aide de DataFrames.

    Création d’un DataFrame

    Le dictionnaire data contient quatre colonnes : nom, âge, score et ville. Il est transformé en DataFrame via pd.DataFrame(data) et stocké dans la variable df.

    Trier par âge de manière ascendante

    La méthode sort_values() permet de trier un DataFrame selon une ou plusieurs colonnes. Le paramètre by='âge' indique la colonne utilisée pour le tri.

    ascending=True précise que le tri est effectué par ordre croissant.

    df_ascendant = df.sort_values(by='âge', ascending=True) retourne un nouveau DataFrame trié sans modifier l’original.

    Trier par score de manière descendante

    De la même manière, df.sort_values(by='score', ascending=False) trie le DataFrame selon la colonne score mais dans l’ordre décroissant, grâce au paramètre ascending=False.

    Le résultat est stocké dans df_descendant et affiché.

    Tri en place par nom

    Le tri peut aussi être appliqué directement sur le DataFrame d’origine en utilisant le paramètre inplace=True.

    df.sort_values(by='nom', ascending=True, inplace=True) trie le DataFrame df par la colonne nom en ordre croissant, en modifiant directement l’objet.