Fonction Pandas DataFrame sort_index()

Suraj Joshi 30 janvier 2023
  1. pandas.DataFrame.sort_index() Méthode
  2. Exemple : Trier un DataFrame de Pandas en fonction de l’index en utilisant la méthode sort_index()
  3. Exemple : Trier les colonnes d’une DataFrame de Pandas en utilisant la méthode sort_index()
Fonction Pandas DataFrame sort_index()

Ce tutoriel explique comment nous pouvons trier une Pandas DataFrame basée sur un index en utilisant la méthode pandas.DataFrame.sort_index().

Nous utiliserons la DataFrame affichée dans l’exemple ci-dessus pour expliquer comment nous pouvons trier une Pandas DataFrame basée sur les valeurs d’un index.

import pandas as pd

pets_df = pd.DataFrame(
    {
        "Pet": ["Dog", "Cat", "Rabbit", "Fish"],
        "Name": ["Rocky", "Luna", "Coco", "Finley"],
        "Age(Years)": [3, 5, 5, 4],
    },
    index=["4", "2", "1", "3"],
)

print(pets_df)

Production :

      Pet    Name  Age(Years)
4     Dog   Rocky           3
2     Cat    Luna           5
1  Rabbit    Coco           5
3    Fish  Finley           4

pandas.DataFrame.sort_index() Méthode

Syntaxe

DataFrame.sort_index(axis=0,
                     level=None,
                     ascending=True,
                     inplace=False,
                     kind='quicksort',
                     na_position='last',
                     sort_remaining=True,
                     ignore_index=False
                     key=None)

Paramètres

axis trier le long de la ligne (axis=0) ou colonne (axis=1)
level Int ou List. Trier sur les valeurs dans des niveaux d’index spécifiés
ascending trier dans l’ordre ascendant (ascending=True) ou descendant (ascending=False)
inplace Booléen. Si True, modifiez le DataFrame de l’appelant en place
kind quel algorithme de tri utiliser. par défaut:quicksort.
na_position Mettez la valeur NaN au début (na_position = 'first') ou à la fin (na_position = 'last')
sort_remaining Booléen. Si True, triez aussi par d’autres niveaux (dans l’ordre) après le tri par niveau spécifié pour index=multilevel
ignore_index Booléen. Si True, le label de l’axe résultant sera 0,1,…n-1.
key Appelable. Si ce n’est pas le cas, appliquez cette fonction key aux valeurs de l’index avant de les trier.

Retournez

Si inplace est True, renvoie la DataFrame triée par index le long de l’axe spécifié ; sinon, None.

Par défaut, nous avons axis=0, représentant le DataFrame sera trié le long de l’axe row ou trié par valeurs d’index. Si nous mettons axis=1, les colonnes de la DataFrame seront triées. Par défaut, la méthode triera le DataFrame en ordre croissant. Pour trier le DataFrame en ordre descendant, nous définissons ascending = False.

Exemple : Trier un DataFrame de Pandas en fonction de l’index en utilisant la méthode sort_index()

import pandas as pd

pets_df = pd.DataFrame(
    {
        "Pet": ["Dog", "Cat", "Rabbit", "Fish"],
        "Name": ["Rocky", "Luna", "Coco", "Finley"],
        "Age(Years)": [3, 5, 5, 4],
    },
    index=["4", "2", "1", "3"],
)

sorted_df = pets_df.sort_index()

print("Initial DataFrame:")
print(pets_df, "\n")

print("DataFrame Sorted by Index Values:")
print(sorted_df)

Production :

Initial DataFrame:
      Pet    Name Age(Years)
4     Dog   Rocky           3
2     Cat    Luna           5
1 Rabbit    Coco           5
3    Fish Finley           4

DataFrame Sorted by Index Values:
      Pet    Name Age(Years)
1 Rabbit    Coco           5
2     Cat    Luna           5
3    Fish Finley           4
4     Dog   Rocky           3

Il trie la DataFrame pet_df en ordre croissant sur la base des valeurs de l’index. Pour trier la DataFrame en fonction des valeurs de l’index, nous devons spécifier le paramètre index. Par défaut, la valeur de axis est 0, ce qui trie les lignes de la DataFrame, c’est-à-dire trie la DataFrame en fonction des valeurs de l’index.

Pour trier la DataFrame en fonction des valeurs de l’index dans l’ordre décroissant, nous définissons ascending=False dans la méthode sort_index().

import pandas as pd

pets_df = pd.DataFrame(
    {
        "Pet": ["Dog", "Cat", "Rabbit", "Fish"],
        "Name": ["Rocky", "Luna", "Coco", "Finley"],
        "Age(Years)": [3, 5, 5, 4],
    },
    index=["4", "2", "1", "3"],
)

sorted_df = pets_df.sort_index(ascending=False)

print("Initial DataFrame:")
print(pets_df, "\n")

print("DataFrame Sorted in Descending order based Index Values:")
print(sorted_df)

Production :

Initial DataFrame:
      Pet    Name Age(Years)
4     Dog   Rocky           3
2     Cat    Luna           5
1 Rabbit    Coco           5
3    Fish Finley           4

DataFrame Sorted in Descending order based Index Values:
      Pet    Name Age(Years)
4     Dog   Rocky           3
3    Fish Finley           4
2     Cat    Luna           5
1 Rabbit    Coco           5

Elle trie la DataFrame pets_df en ordre décroissant sur la base des valeurs de l’index.

Exemple : Trier les colonnes d’une DataFrame de Pandas en utilisant la méthode sort_index()

Pour trier les colonnes d’un Pandas DataFrame, nous avons mis axis=1 dans la méthode sort_index().

import pandas as pd

pets_df = pd.DataFrame(
    {
        "Pet": ["Dog", "Cat", "Rabbit", "Fish"],
        "Name": ["Rocky", "Luna", "Coco", "Finley"],
        "Age(Years)": [3, 5, 5, 4],
    },
    index=["4", "2", "1", "3"],
)

sorted_df = pets_df.sort_index(axis=1)

print("Initial DataFrame:")
print(pets_df, "\n")

print("DataFrame with sorted Columns:")
print(sorted_df)

Production :

Initial DataFrame:
      Pet    Name  Age(Years)
4     Dog   Rocky           3
2     Cat    Luna           5
1  Rabbit    Coco           5
3    Fish  Finley           4

DataFrame with sorted Columns:
   Age(Years)    Name     Pet
4           3   Rocky     Dog
2           5    Luna     Cat
1           5    Coco  Rabbit
3           4  Finley    Fish

Elle trie les colonnes de la DataFrame pets_df. Les colonnes sont triées en ordre croissant par le nom des colonnes.

Auteur: Suraj Joshi
Suraj Joshi avatar Suraj Joshi avatar

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

LinkedIn

Article connexe - Pandas DataFrame