Si vous souhaitez faire de l’analyse de données en Python, l’utilisation de pandas est indispensable. D’ailleurs le sous-titre est clair Data Wrangling with Pandas, NumPy, and IPython. Si vous souhaitez utiliser pandas, la lecture de ce livre est indispensable – Stack Overflow aussi. D’ailleurs il aurait dû porter le titre pandas for data analysis.

Ce livre a été écrit par le créateur de pandas, Wes McKinney, lorsqu’il travaillait pour une société effectuant des analyses financières.

The pandas name itself is derived from panel data, an econometrics term for multidimensional structured data sets, and Python data analysis itself.

S’il fallait une légitimité elle se pose là. On voit tout de suite que le garçon sait de quoi il parle, dès le chapitre sobrement intitulé Introductory Examples, il vous en met plein la vue – et ce n’est que le début.

Par contre, il sait expliquer les choses clairement. L’exemple parfait est le chapitre consacré aux structures de données (Introduction to pandas Data Structures), c’est absolument crucial pour la compréhension de pandas. C’est la présentation la plus claire que j’ai pu lire. Les exemples sont un pur bonheur, une syntaxe épurée au possible en parfaite harmonie avec le “Zen of Python”. D’ailleurs l’un des gimmicks de l’auteur est la phrase suivante pour introduire une fonctionnalité

[…] works just as you would expect.

ou

[…] does exactly what you would expect.

Et c’est vrai, tout marche comme on l’attend. Au bout d’un certain temps on arrive à découvrir intuitivement des façons de faire. C’est à ce moment que l’on a compris la philosophie de l’outil et du langage.

Après je dois avouer que ce livre est compliqué à lire, mais pas pour les raisons que l’on croit, mais parce qu’il fait partir votre cerveau dans tous les sens – l’expression consacrée est “blow your mind”. Vous n’arrêtez pas de vous dire en boucle et dans le désordre:

  1. Il faut absolument que je retienne ça.
  2. Génial, ça peut certainement s’appliquer dans mon cas.
  3. Merde, j’aurais dû faire comme ça.

Je conseille donc de le lire par petits bouts – je le redis en commençant par la partie consacrée aux structures de données – et de mettre tout cela en pratique dans le cadre du mini projet (pet project) sur des données qui vous intéressent ou en tentant de répondre à des questions sur Stack Overflow.

P.-S.: Pour ceux qui se poseraient la question, l’animal sur la couverture est un golden-tailed tree shrew ce qui donne en français un Ptilocerque de Low – on n’est pas plus avancés – qui est un petit mammifère qui vit en Indonésie en Malaisie et en Thaïlande.


Wes McKinney, Python for Data Analysis, O’Reilly, 2012, 472 p, Amazon.