Venez assister à notre Journée Portes Ouvertes en live le jeudi 02 mai à 18h30
Venez assister à notre Journée Portes Ouvertes en live le jeudi 02 mai à 18h30
Venez assister à notre Journée Portes Ouvertes en live le jeudi 02 mai à 18h30
Je m'inscris à l'évènement
Difficulté :
Moyenne

Les 10 bibliothèques Python qu'un Data analyst doit connaître

Mis à jour le
16/4/2024
-
Antoine
Python ne serait pas Python sans ses bibliothèques. Découvre ce qu’est une librairie, comment les utiliser, et quelles sont les librairies incontournables en Data Science !
Sommaire

Peut-on vraiment tout faire avec Python ?

Oui ! Mais à condition de s’équiper des bons outils.

Les bibliothèques (ou librairies) sont un peu le super-pouvoir de Python.

Elles permettent de faire de Python ton allié, quel que soit le domaine dans lequel tu travailles.

Découvre dans cet article ce qu’est une librairie en programmation, et quelles sont les librairies préférées des Data Analyst.

Qu’est ce qu’une bibliothèque ou librairie en programmation?

En programmation, une bibliothèque (ou “library” en anglais) est une collection de fonctions et de modules liées à un thème spécifique. Si ces modules appartiennent au pack originel du langage, ce sont des modules intégrés

Python a également été complété par des modules tiers : ils ont été codées par des développeurs à partir des fonctions de bases du langage et ils sont accessibles en open-source.

Remarque : normalement, on devrait traduire “library” par “bibliothèque”, mais par abus de langage, l’usage du terme “librairie” s’est généralisé !

La plupart des langages de programmation disposent de librairies. Il suffit de les importer dans le programme grâce à quelques lignes de code.

Citons quelques exemples :

  • Javascript : JQuery permet de créer des sites web dynamiques.
  • C++ : Math.h regroupe des fonctions mathématiques très avancées.
  • Java : JFreeChart permet de visualiser graphiquement des données statistiques.

En langage Python, une librairie c’est un ensemble de fonctions, de classes d’objets et de constantes qui permettent de travailler sur un thème particulier. Il existe de très nombreuses bibliothèques Python, et c’est pour cela que c’est le langage de programmation le plus populaire (selon le classement Tiobe 2021).  

En effet, l’esprit de communauté de Python se manifeste à travers la mise à disposition de nombreuses librairies. Les développeurs expérimentés peuvent diffuser les librairies qu’ils codent grâce au site Pypi. Ce site Internet regroupe également la documentation nécessaire pour bien utiliser les librairies, et indique la ligne de code nécessaire pour leur importation. Tu peux également trouver des indications et des astuces sur le site python.org

Les librairies de Python


Avec les bibliothèques de Python, tu gagnes un temps précieux ! Leur nombre et leur facilité d’utilisation expliquent notamment pourquoi apprendre Python est devenu incontournable !

En effet, en utilisant ce que d’autres développeurs ont déjà codé avant toi, tu peux te lancer dans des projets plus ambitieux, en améliorant la fluidité de ton travail. Il est parfois même possible de repousser les limites de tes propres connaissances : un peu comme en mathématiques où tu utilises des théorèmes que tu n’aurais pas pu inventer seul. Avec les librairies Python tu peux te servir de techniques algorithmiques très avancées… très simplement.

Par exemple, si tu t’inscris au bootcamp de Databird, tu apprendras à réaliser une régression linéaire dans le cadre d’une initiation au Machine Learning. Il est intéressant de comprendre comment ce modèle fonctionne mais pour l’exécuter, tu peux simplement utiliser une fonction de la bibliothèque Scikit learn (voir plus bas).

La Data science t’intéresse ? Découvre nos formations et deviens un Data Analyst opérationnel en quelques semaines !

Dans cet article, nous listons les bibliothèques les plus utilisées par les professionnels de la Data science. Sache cependant qu’il existe des bibliothèques pour tous les secteurs d’application. Par exemple, dans le domaine de la recherche scientifique, la bibliothèque biopython permet de traiter et d'analyser plus facilement des données biologiques. Dans le domaine des jeux vidéos, la bibliothèque pyGame est utilisée pour créer des jeux vidéo en 2D ou 3D.

Pandas

Pandas - Bibliotheque Python

Pandas est la bibliothèque la plus complète en ce qui concerne la manipulation de données. On peut comparer pandas à un “Excel sous stéroïdes” : elle permet de travailler avec :

  • des tableaux de données en deux dimensions (lignes et colonnes) appelés DataFrames,
  • des Panels, c'est-à-dire des ensemble de données en trois ou quatre dimensions!
Pandas 3D - Bibliotheque Python

Avec la bibliothèque Pandas, tu peux importer des données depuis un fichier .csv afin de les nettoyer (par exemple pour éliminer toutes les lignes vides), les transformer ou les compléter.

Pandas permet également d’effectuer des calculs statistiques sur tes données, par exemple avec la méthode .mean() qui permet d’obtenir la moyenne des valeurs contenues dans une colonne.

Le principal avantage de Pandas par rapport à Numpy est de permettre de nommer les colonnes et les lignes, ce qui offre bien plus de lisibilité dans tes projets. 

Voici un exemple de DataFrame qu’une banque pourrait utiliser : ce tableau contient des informations sur les emprunts accordés. 

Une ligne correspond à un client, et les colonnes offrent des informations complémentaires : âge, revenu, statut de propriétaire ou non, situation d’emploi, but de l’emprunt, note de l’emprunt (son risque), montant de l’emprunt, taux d'intérêt de l’emprunt…

Dataframe Pandas

Numpy

Numpy - Bibliotheque Python

Numpy contients des modules de gestion de données et de calcul. Elle permet de gérer facilement des bases de données : on les appelle les numpy arrays. Ce sont des listes, ou bien des listes de listes.

Numpy arrays - Biblioteque Python

L’avantage de Numpy est de pouvoir créer rapidement une base de données, avec des instructions simples que Python comprend. Par exemple, l’instruction np.zeros(10) renvoie une liste de dix chiffres, tous égaux à 0. 

Ensuite, Numpy permet d’effectuer des opérations particulièrement rapidement. En effet, avec Numpy une opération effectuée sur un “array” s’applique à chaque terme de cet array. Cela évite de devoir exécuter une boucle FOR ou une boucle WHILE, ce qui est parfois une opération assez lente.

Tu peux également faire interagir deux arrays, par exemple en les additionnant. 

Numpy est pourvue de fonctions mathématiques plus puissantes que pandas. Toutefois, Numpy ne permet pas d'étiqueter les colonnes et les lignes.



SciPy

Scipy - Bibliotheque Python

SciPy s’utilise en synergie avec Numpy puisqu’elle travaille sur des données du format Numpy array. SciPy offre un catalogue d’opérations scientifiques : algèbre linéaire, algorithmes de régression, fonctions statistiques… 

En particulier, SciPy permet de travailler sur des projets d’optimisation numérique qui consistent à chercher à obtenir le plus petit chiffre (ou le plus grand) possible en modifiant certaines variables.@

SciPy permet également de travailler dans l’ingénierie avec des fonctions physiques (par exemple le calcul de la pulsation d’un signal).

Matplotlib

Matplotlib - Bibliotheque Python

Matplotlib est un module de dataviz très plaisant : c’est en effet lui qui te permet, en une ligne de code, de créer des graphiques qui modélisent les données sur lesquelles tu travailles. Matplotlib s’utilise en synergie avec Numpy ou Pandas.


Matplotlib offre une large variété de types de graphes qui s’adaptent à tous les besoins : histogrammes, boîtes à moustache, courbes, scatter plots, camemberts…

Graphiques Matplotlib - Bibliotheque Python

Il est possible de personnaliser ton graphique autant que tu le souhaites, à condition d’apprendre à coder en Python ! Mais pas d’inquiétude, l’apprentissage de la bibliothèque Matplotlib fait partie de la formation de Databird et toute la documentation est également disponible sur le site python.org.

Voici un exemple de graphique personnalisé : 

D’abord, on choisit mille valeurs entre 0 et 10, régulièrement espacées :

x = np.linspace(0, 10, 1000)

On applique la fonction cosinus :

y = np.cos(x)

Enfin, on utilise le module plt.plot de Matplotlib pour afficher le graphique correspondant : 

plt.plot(x,y)

Une fois la dernière ligne de code exécutée, voici ce qui s’affiche à l’écran :

Graphique Matplotlib original - Bibliotheque Python

Avec les attributs du module plt.plot, tu peux facilement personnaliser ton graphique : 

plt.plot(x, y, color = 'red', marker = 'o', linestyle = 'dashed')

Voici ce que donne l’exécution de la ligne de code ci-dessus :

Graphique Matplotlib personnalisé - Bibliotheque Python

Seaborn

Seaborn - Bibliotheque Python

Seaborn est une extension de Matplotlib. C’est un outil plus puissant, qui permet de tracer des graphiques relationnels entre deux vecteurs et des graphiques de distribution.

Seaborn a également la réputation d’être plus fonctionnel, car les thèmes par défaut sont esthétiques et peuvent être utilisés pour concevoir un tableau de bord, ce qui n’est pas toujours le cas des graphiques Matplotlib.

De plus, avec Seaborn il est possible d’automatiser la création de graphiques : cela te permet de travailler plus vite, et de gagner du temps lorsque tu veux présenter visuellement tes résultats. 

Requests

Requests - Bibliotheque Python

Requests permet d’effectuer la première étape du web-scraping : la récupération du code HTML de la page. Concrètement, Requests est capable d’aller chercher sur le web une page dont on lui indique l’URL. On utilise pour cela la méthode .get(). 

On dit que Requests gère les requêtes HTTP : elle est capable de se rendre sur un site dont l’adresse commence par “http”.

Par exemple, pour obtenir le code HTML de la page Trustpilot qui compile les avis sur la formation Databird, on utilise :

response = requests.get('https://fr.trustpilot.com/review/data-bird.co')

 {{banniere-article}}

BeautifulSoup

BeautifoulSoup - Bibliotheque Python

BeautifulSoup vient en complément de Requests. C’est un module d’analyse syntaxique, qui permet de nettoyer et d’organiser des gros blocs de textes. BeautifulSoup prend en charge différents langages, notamment HTML et XML

Voici par exemple une ligne de code qui permet de réorganiser une variable (nommée “content”) qui contient du code HTML. Dans ce cas, il faut bien préciser à Python qu’on utilise un parser (c’est-à-dire un outil d’analyse) adapté au langage HTML.

soup = BeautifulSoup(content , "html.parser" )


Remarque : BeautifulSoup est même capable de corriger les petites erreurs syntaxiques qui sont présentes dans le corps du code HTML ou XML.

BeautifulSoup et Requests sont deux bibliothèques indispensables pour réaliser du web-scraping avec Python. Le web-scraping est l’une des compétences-clé du Data Analyst, et nous lui consacrons quatre jours de notre programme.

Scikit learn

Scikit Learn - Bibliotheque Python

Scikit learn, aussi appelée sklearn, est le module de machine learning le plus populaire. Cette biliothèque permet d’effectuer d supervisé ou non-supervisé. Elle est également performante en modélisation statistique, particulièrement pour la classification et la régression.

Sklearn propose de choisir un modèle parmi différentes classes de modèles, puis de le paramétrer, de l’entraîner et enfin de le tester sur tes données.

Cette bibliothèque est appropriée pour les usages business et notamment pour la mise en place de modèles prédictifs. On peut citer Spotify, qui s’en sert pour ses algorithmes de prédiction musicale, ainsi que Booking.com pour définir ses recommandations d’hôtels.

PyTorch

Pytorch - Bibliotheque Python

PyTorch est un module qui a été développé à partir de la librairie Torch, elle-même mise à disposition par les équipes de Facebook. Il rend accessible la réalisation de projets de Deep Learning

PyTorch travaille sur des datasets de grande taille et propose des modèles d’apprentissage complexes fondés sur les réseaux de neurones. Le framework permet d’effectuer des prédictions, mais aussi de calculer l’erreur par rapport aux prédictions.

L’un des principaux avantages de PyTorch est le débuggage automatique intégré à la librairie.

TensorFlow

TensorFlow- Bibliotheque Python

TensorFlow est le framework de Deep Learning développé par Google. Comme PyTorch, il permet de développer des réseaux de neurones profonds. 

TensorFlow donne accès à des fonctionnalités et des techniques de Deep Learning très avancées, mais on reproche souvent à ce framework d’être un peu compliqué à prendre en main. Cette complexité est compensée par la grande flexibilité qu’offre TensorFlow, dès lors qu’on maîtrise l’outil.

Comment importer une bibliothèque sur Python?

Pour importer une bibliothèque, une ligne de code suffit. Par exemple, pour importer pandas, il suffit d’écrire :

import pandas as pd

En général, on donne un surnom à la bibliothèque (ici “pd”). En effet, on va être amené à appeler cette bibliothèque souvent dans le corps du code. Alors autant réduire le nombre de caractères nécessaires afin de gagner du temps!

Il y a parfois quelques subtilités. Il faut parfois préciser pip install pour que Python comprenne où est située la bibliothèque. C’est par exemple le cas pour BeautifulSoup

!pip install bs4
from bs4 import BeautifulSoup
Venez assister à notre Journée Portes Ouvertes en live le jeudi 02 mai à 18h30
Rejoignez-nous le jeudi 02 mai dès 18h30 pour notre Journée Portes Ouvertes en live. Explorez le bootcamp DataBird ainsi que nos programmes de formation data.
Je m'inscris à l'évènement
Faites un premier pas dans la data avec nos cours gratuits
Démarrer

Nos derniers articles sur

Python

Le modèle statistique SARIMAX est un modèle qui permet de réaliser des prédictions statistiques ultra-fiables. Voyons ensemble comment l'utiliser !
Découvrez les avantages du langage Python, comment l’apprendre et les domaines d’application du langage de programmation le plus populaire au monde
C’est le langage de programmation le plus apprécié par les développeurs et les recruteurs. Découvrez les nombreuses raisons d’apprendre Python en 2023 !
Difficulté :
Moyenne