4.2 KiB
title, author
title | author |
---|---|
Pandas | Steve Kossouho |
Concepts de base de Pandas
La bibliothèque Pandas
Il existe d'assez nombreuses bibliothèques Python destinées à faciliter le traitement de données. Bien que la bascule prenne du temps, de plus en plus de développeurs et d'entreprises optent pour inclure ces bibliothèques dans leur flux de travail, bien souvent en remplacement de solutions payantes telles que SAS, Stata ou MatLab.
Parmi ces bibliothèques, on compte notamment pyspark
(Apache Spark
), pandas
, polars
ou encore dask
.
pandas
, la plus connue d'entre elles, est une bibliothèque assez intuitive, destinée à des
développeurs, et pensée pour des développeurs qui sont déjà habitués à traiter de la donnée
dans des logiciels propriétaires.
Installer pandas
Pour bénéficier de la meilleure expérience avec Pandas, vous pouvez l'installer avec l'outil pip
:
# Pandas-stubs offre l'autocomplétion sur des éléments dynamiques
# Openpyxl permet à pandas de charger des documents Excel 2003- et 2007+
pip install pandas pandas-stubs openpyxl
Types de base de Pandas
Toute l'utilisation de la bibliothèque Pandas
tourne autour de 3 classes principales permettant de manipuler des données en 1D ou en 2D.
Series
: Séries de données (1 dimension)DataFrame
: Tableaux de données (2 dimensions)Index
: Séries de données identifiant des colonnes ou lignes
[Guide utilisateur Pandas]
Les objets Series
La classe Series
est la plus simple à manipuler. Elle stocke et permet de gérer les données d'un tableau à une dimension.
import pandas as pd
series = pd.Series([0, 1, 1, 2, 3, 5, 8, 13, 21])
[pandas.Series]
Les objets DataFrame
La classe DataFrame
permet de stocker et de manipuler des données dans un tableau à deux dimensions. Cette classe est séparée de la classe Series
, au moins parce que les objets DataFrame
possèdent deux index, au lieu d'un seul pour une Series
(nous allons le découvrir plus tard).
import pandas as pd
dataframe = pd.DataFrame(data=[["Paul", 1974], ["Quentin", 1991], ["Aude", 1987]])
[pandas.DataFrame]
Les objets Index
La classe Index
est similaire à un objet de la classe Series
. C'est une séquence de valeurs, qui est utilisée par Pandas pour étiqueter des colonnes d'un DataFrame
, ou des enregistrements d'une Series
ou d'un DataFrame
. Tout objet Series
ou DataFrame
possède toujours un index par axe.
import pandas as pd
index = pd.Index(data=[1, 2, 3])
[pandas.Index]
Alternatif : Les objets MultiIndex
Un objet MultiIndex
est un Index
dont les étiquettes sont composées sur plusieurs niveaux. Cela permet d'extraire des lignes ou des colonnes hiérarchiquement.
import pandas as pd
index = pd.MultiIndex.from_tuples([("FR", "Paris"), ("FR", "Pau"), ("ES", "Madrid"), ("ES", "Sevilla")])
series = pd.Series(data=[1, 2, 3, 4], index=index)
print(series.loc["FR"])
[Indexation avancée]
Alternatif : Les objets DatetimeIndex
Un objet DatetimeIndex
est un Index
contenant des objets de type date, et dont le contenu est générable de façon déterministe. Ils contiennent généralement des dates à intervalles réguliers, ou des dates suivant des règles simples (ex. tous les 4 mercredi, toutes les fins de mois etc.)
[Indexation avancée]
Structure d'une Series
Structure d'un DataFrame
[Guide utilisateur Pandas]: https://pandas.pydata.org/docs/user_guide/index.html#user-guide Pandas user guide [pandas.Series]: https://pandas.pydata.org/docs/reference/series.html [pandas.DataFrame]: https://pandas.pydata.org/docs/reference/frame.html [pandas.Index]: https://pandas.pydata.org/docs/reference/indexing.html [pandas.MultiIndex]: https://pandas.pydata.org/docs/user_guide/advanced.html [Indexation avancée]: https://pandas.pydata.org/docs/user_guide/advanced.html