Trier les valeurs par ordre décroissant (sort_values(by='colonne', ascending=False))

La méthode sort_values() avec l’option ascending=False permet de trier les valeurs d’une colonne dans un ordre décroissant. Cette fonctionnalité est utile lorsque vous souhaitez voir les plus grandes valeurs en premier. Vous pouvez également trier plusieurs colonnes en spécifiant une liste de colonnes dans le paramètre by.

Fonctions :

  • sort_values(by='colonne', ascending=False)

    La méthode sort_values(by='colonne', ascending=False) permet de trier les valeurs d’une colonne spécifique dans un ordre décroissant. Ce tri est particulièrement utile lorsque vous souhaitez analyser les données en mettant en avant les plus grandes valeurs, comme les meilleurs scores, les plus grands revenus ou toute autre donnée importante en haut de la liste.

    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 (ordre décroissant).
    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' par ordre décroissant
    df_decroissant_age = df.sort_values(by='âge', ascending=False)
    print("DataFrame trié par âge (décroissant) :")
    print(df_decroissant_age)
    
    # Trier les valeurs de la colonne 'score' par ordre décroissant
    df_decroissant_score = df.sort_values(by='score', ascending=False)
    print("\nDataFrame trié par score (décroissant) :")
    print(df_decroissant_score)
    
    # Trier en place et modifier directement le DataFrame par ordre décroissant sur la colonne 'nom'
    df.sort_values(by='nom', ascending=False, inplace=True)
    print("\nDataFrame trié par nom (décroissant) en place :")
    print(df)

    Explication du code :

    • DataFrame : Un DataFrame est créé avec des données fictives comprenant les colonnes nom, âge, score, et ville.
    • Tri par colonne avec sort_values() :
      • La première opération utilise sort_values(by='âge', ascending=False) pour trier les lignes du DataFrame en fonction des valeurs de la colonne âge par ordre décroissant (du plus grand au plus petit).
      • La deuxième opération utilise sort_values(by='score', ascending=False) pour trier les lignes en fonction des valeurs de la colonne score par ordre décroissant.
      • La dernière opération utilise sort_values(by='nom', ascending=False, inplace=True) pour trier le DataFrame par ordre alphabétique décroissant des noms, et cette modification est effectuée directement sur le DataFrame original grâce à l'argument inplace=True.

    Remarque :

    • Tri Décroissant : En passant ascending=False à la méthode sort_values(), vous inversez l'ordre de tri, triant les valeurs de la colonne de manière décroissante.
    • Inplace : L'argument inplace permet de modifier directement le DataFrame sans en créer un nouveau. Si inplace=False (par défaut), un nouveau DataFrame trié est renvoyé.