Skip to content

Trier les données d'un DataFrame Pandas par indice

L'une des fonctionnalités les plus puissantes de Pandas est sa capacité à manipuler et traiter facilement de grandes quantités de données. Dans ce tutoriel, nous allons aborder l'une des méthodes fondamentales de Pandas - la méthode sort_index(). Grâce à cette méthode, il est possible de trier un DataFrame Pandas selon son indice, qu'il soit numérique ou basé sur une chaîne de caractères. À la fin de ce tutoriel, vous aurez une bonne compréhension de la façon d'utiliser la méthode sort_index() pour trier vos données et améliorer vos compétences en manipulation de données.

Mais avant de plonger dans la méthode sort_index(), parlons brièvement de ce qu'est un DataFrame Pandas.

Vous voulez créer rapidement des visualisations de données en Python ?

PyGWalker est un projet Python Open Source qui peut accélérer l'analyse et la visualisation des données directement dans des environnements basés sur Jupyter Notebook.

PyGWalker (opens in a new tab) transforme votre DataFrame Pandas (ou DataFrame Polars) en une interface utilisateur visuelle où vous pouvez faire glisser-déposer des variables pour créer facilement des graphiques. Utilisez simplement le code suivant :

pip install pygwalker
import pygwalker as pyg
gwalker = pyg.walk(df)

Vous pouvez exécuter PyGWalker dès maintenant avec ces notebooks en ligne :

Et n'oubliez pas de nous donner une ⭐️ sur GitHub !

Exécuter PyGWalker dans un notebook Kaggle (opens in a new tab)Exécuter PyGWalker dans Google Colab (opens in a new tab)Donner une ⭐️ à PyGWalker sur GitHub (opens in a new tab)
Exécuter PyGWalker dans un notebook Kaggle (opens in a new tab)Exécuter PyGWalker dans Google Colab (opens in a new tab)Exécuter PyGWalker dans Google Colab (opens in a new tab)

Qu'est-ce qu'un DataFrame Pandas ?

Un DataFrame Pandas est une table bidimensionnelle qui possède des lignes et des colonnes étiquetées. Il est similaire à une feuille de calcul ou à une table SQL. Dans un DataFrame, les lignes représentent des observations ou des enregistrements, tandis que les colonnes représentent des variables ou des caractéristiques.

Pandas est construit sur la bibliothèque NumPy, ce qui signifie qu'il est incroyablement rapide pour manipuler de grands ensembles de données. Il offre également des méthodes intégrées pour le nettoyage des données, la manipulation des données et la visualisation des données.

Maintenant que nous avons une compréhension de base d'un DataFrame Pandas, passons à la méthode sort_index().

Trier les données d'un DataFrame Pandas par indice

La méthode sort_index() est utilisée pour trier un DataFrame Pandas selon son indice. L'indice d'un DataFrame est similaire au numéro de ligne dans une feuille de calcul. Il identifie chaque ligne du DataFrame.

Jetons un coup d'œil à un exemple.

import pandas as pd 
 
# create a dictionary 
data = {'name': ['John', 'Mark', 'Sara', 'Anna', 'Paul'],
       'age': [24, 34, 21, 19, 26],
       'city': ['New York', 'Paris', 'London', 'Berlin', 'San Francisco']}
 
# create a DataFrame 
df = pd.DataFrame(data, index=['b', 'a', 'd', 'c', 'e'])
 
# sort the DataFrame by index 
df = df.sort_index()
print(df)

Résultat :

    name  age           city
a   Mark   34          Paris
b   John   24       New York
c   Anna   19         Berlin
d   Sara   21         London
e   Paul   26  San Francisco

Dans l'exemple ci-dessus, nous avons créé un dictionnaire data avec trois clés name, age et city. Nous avons ensuite utilisé ce dictionnaire pour créer un DataFrame df avec l'indice spécifié.

Après avoir créé le DataFrame, nous avons utilisé la méthode sort_index() pour trier le DataFrame selon son indice. Comme vous pouvez le voir, la méthode sort_index() trie le DataFrame par son indice dans l'ordre croissant.

Si nous voulons trier l'indice dans l'ordre décroissant, nous pouvons utiliser la méthode sort_index(ascending=False).

# sort the DataFrame by index in descending order
df = df.sort_index(ascending=False)
print(df)

Résultat :

    name  age           city
e   Paul   26  San Francisco
d   Sara   21         London
c   Anna   19         Berlin
b   John   24       New York
a   Mark   34          Paris

Comme vous pouvez le voir, la méthode sort_index(ascending=False) trie le DataFrame dans l'ordre décroissant.

Trier un objet Series Pandas par indice

Une Series Pandas est un tableau unidimensionnel étiqueté. Il est similaire à une colonne dans une feuille de calcul. Comme un DataFrame, une Series possède également un indice.

Pour trier une Series Pandas selon son indice, nous pouvons également utiliser la méthode sort_index().

import pandas as pd 
 
# create a dictionary 
data = {'name': ['John', 'Mark', 'Sara', 'Anna', 'Paul'],
       'age': [24, 34, 21, 19, 26],
       'city': ['New York', 'Paris', 'London', 'Berlin', 'San Francisco']}
 
# create a DataFrame 
df = pd.DataFrame(data, index=['b', 'a', 'd', 'c', 'e'])
 
# select a Series from the DataFrame
s = df['name']
 
# sort the Series by its index 
s = s.sort_index()
print(s)

Résultat :

a     Mark
b     John
c     Anna
d     Sara
e     Paul
Name: name, dtype: object

Dans le code ci-dessus, nous avons d'abord créé un DataFrame df avec un index spécifié. La variable s sélectionne ensuite la colonne name du DataFrame en tant que Series. Nous pouvons ensuite trier la Series par son index en utilisant la méthode sort_index().

Conclusion

Dans ce tutoriel, nous avons appris comment utiliser la méthode sort_index() pour trier un DataFrame ou une Series de Pandas par son index. Il s'agit d'une méthode puissante qui peut nous aider à nettoyer et manipuler facilement de grands ensembles de données. Nous espérons que vous avez trouvé ce tutoriel utile et informatif.