Pandas

Un article de Wikipédia, l'encyclopédie libre.
Pandas
Description de l'image Pandas logo.svg.
Description de l'image Pandas mark.svg.
Informations
Créateur Wes McKinneyVoir et modifier les données sur Wikidata
Dernière version 1.3.0 ()[1]Voir et modifier les données sur Wikidata
Dépôt github.com/pandas-dev/pandasVoir et modifier les données sur Wikidata
Assurance qualité Intégration continueVoir et modifier les données sur Wikidata
Écrit en PythonVoir et modifier les données sur Wikidata
Système d'exploitation MultiplateformeVoir et modifier les données sur Wikidata
Type Bibliothèque logicielle Python (d)
Numerical software (d)Voir et modifier les données sur Wikidata
Licence Licence BSDVoir et modifier les données sur Wikidata
Documentation pandas.pydata.org/docs/user_guide/index.html#user-guideVoir et modifier les données sur Wikidata
Site web pandas.pydata.orgVoir et modifier les données sur Wikidata

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.

Pandas est un logiciel libre sous licence BSD[2]. Son nom est dérivé du terme "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 "analyse de données Python".

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[modifier | modifier le code]

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[modifier | modifier le code]

  • 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[modifier | modifier le code]

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[modifier | modifier le code]

Références[modifier | modifier le code]

  1. « Release 1.3.0 », (consulté le )
  2. http://pandas.pydata.org/pandas-docs/stable/overview.html#license
  3. Andreas C. Müller, Sarah Guido, Introduction to Machine Learning with Python, O'Reilly, (ISBN 978-1449369415, lire en ligne)

Liens externes[modifier | modifier le code]