Pandas
Pandas est une bibliothèque écrite pour le langage de programmation Python permettant la manipulation et l'analyse des données. Elle propose en particulier des structures de données et des opérations de manipulation de tableaux numériques et de séries temporelles.
Créateur | Wes McKinney |
---|---|
Dernière version | 1.4.3 ()[1] |
Dépôt | github.com/pandas-dev/pandas |
Assurance qualité | Intégration continue |
Écrit en | Python |
Système d'exploitation | Multiplateforme |
Type |
Bibliothèque logicielle Python (d) Numerical software (d) |
Licence | Licence BSD |
Documentation | pandas.pydata.org/docs/user_guide/index.html#user-guide |
Site web | pandas.pydata.org |
Pandas est un logiciel libre sous licence BSD[2]. Son nom est dérivé du terme Panel Data (en français "données de panel", un terme d'économétrie pour les jeux de données qui comprennent des observations sur plusieurs périodes de temps pour les mêmes individus). Son nom est également un jeu de mots sur l'expression "Python Data Analysis".
Entre 2007 à 2010, Wes McKinney a commencé à construire ce qui allait devenir Pandas alors qu'il était chercheur dans la société américaine AQR Capital.
Structures de données
Les principales structures de données gérées par cette bibliothèque sont :
- séries : stockage des données selon une dimension - grandeur en fonction d'un index
- DataFrames : stockage des données selon 2 dimensions - lignes et colonnes
- Panels : représentation des données selon 3 dimensions
- Panels4D ou DataFrames avec des index hiérarchiques aussi nommés MultiIndex : représentation des données selon plus de 3 dimensions - hypercube.
Fonctionnalités de la bibliothèque
- l'objet DataFrame pour manipuler des données aisément et efficacement avec des index pouvant être des chaines de caractères ;
- des outils pour lire et écrire des données structurées en mémoire depuis et vers différents formats : fichiers CSV, fichiers textuels, fichier du tableur Microsoft Excel, base de données SQL ou le format rapide et permettant de gérer de gros volume de données nommé HDF5 ;
- alignement intelligent des données et gestion des données manquantes (NaN = not a number). alignement des données basé sur des étiquettes (chaines de caractères). tri selon divers critères de données totalement désordonnées ;
- Redimensionnement et table pivot ou pivot table en anglais (aussi nommé tableau croisé dynamique) ;
- Fusion et jointure de large volume de données
- Analyse de séries temporelles
Les voies critiques de la bibliothèque sont écrits en Cython ou C[3].
Exemples
Courbes
import pandas as pd
import matplotlib.pyplot as plt
import numpy as np
df = pd.DataFrame(np.random.randn(100, 5), columns=list('ABCDE'))
df=df.cumsum() # Return cumulative sum over a DataFrame or Series axis
df.plot()
plt.show()
Diagramme à barres
df = pd.DataFrame(np.random.rand(10, 5), columns=list('ABCDE'))
df.plot.bar(stacked=True)
plt.show()
Box plot
df = pd.DataFrame(np.random.rand(7, 5), columns=list('ABCDE'))
df.plot.box()
plt.show()
Histogramme
data = pd.Series(np.random.normal(size=100))
data.hist(grid=False)
plt.show()
Voir également
- NumPy
- SciPy
- matplotlib
- statsmodels
- GNU R
Références
- « Release Pandas 1.4.3 »
- http://pandas.pydata.org/pandas-docs/stable/overview.html#license
- Andreas C. Müller, Sarah Guido, Introduction to Machine Learning with Python, O'Reilly, (ISBN 978-1449369415, lire en ligne)
Liens externes
- Site web Pandas
- Dépôt GitHub de Pandas
- Livre Python for Data Analysis
- Livre Analyse de données en Python - Manipulation de données avec pandas, NumPy et IPython (traduction française de Python for Data Analysis)
- Pandas and Python : Top 10
- Pandas, une bibliothèque pour manipuler facilement des données (article sur le site LinuxFr)
- Portail de la programmation informatique
- Portail des logiciels libres