Packages Python pour analyse de données

Site: IHE DELFT OPEN COURSEWARE
Course: FAO CB4WA: Utilisation du portail FAO WaPOR
Book: Packages Python pour analyse de données
Printed by: Guest user
Date: Thursday, 8 December 2022, 7:59 PM

Description


1. Introduction

Ce notebook contient une brève introduction et des ressources de certains packages courants de Python qui sont utilisés pour :

Vous trouverez un guide pour installer les packages Python avec distribution Anaconda. Vous n’avez peut-être pas à installer certains packages car il s’agit de bibliothèques standard de Python ou pré-chargées dans l’environnement Python géré par Anaconda. Par conséquent, vous devrez vérifier si le package a été installé sur votre environnement Python avant de l’installer.

2. Installer le package Python

La distribution Anaconda est livrée avec plus de 250 packages automatiquement installés, et plus de 7 500 packages de sources ouvertes supplémentaires peuvent être installés à partir du référentiel standard de packages Python PyPI (gestionnaire de package pip) ainsi que le gestionnaire de package conda.

La différence entre conda et le gestionnaire de package pip réside dans la gestion des dépendances du package, ce qui est un défi important pour la science des données Python et donc la raison pour laquelle conda existe. Lorsque pip installe un package, il installe automatiquement tous les packages Python dépendants sans vérifier si ceux-ci entrent en conflit avec les packages précédemment installés. En revanche, conda analyse l’environnement actuel, y compris tout ce qui est actuellement installé, et, avec toutes les limitations de version spécifiées, explique comment installer un ensemble compatible de dépendances, et affiche un avertissement si cela ne peut pas être fait.

Les étapes ci-dessous montrent comment installer les packages Python :

Utilisation du gestionnaire de packages Conda

1. Méthode 1 : Navigateur Anaconda (Il s’agit d’une interface utilisateur graphique)

Étape 1 : Ouvrir Anaconda Navigator


Étape 2 : Dans l’onglet ‘Environnements’, sélectionnez l’environnement que vous voulez afin d’installer des packages. Recherchez l’environnement appelé base (racine) ‘base (root)’. À l’intérieur de cet environnement, il devrait y avoir de nombreux packages Python qui sont déjà pré-chargés.


Important: L’environnement de base actuel d’Anaconda utilise la version Python 3.8, qui ne prend pas en charge certains packages pour l’analyse des données géospatiales. Vous devrez créer un nouvel environnement Python avec Python 3.7 en cliquant sur Créer 'Create'. Dans la fenêtre « Créer un nouvel environnement » 'Create new environment', sélectionnez Python version 3.7 et tapez un nom pour le nouvel environnement.

Étape 3: Dans la liste des packages de votre environnement sélectionné, sélectionnez « Tout » ‘All’ dans la liste déroulante proche du bouton « Canaux » 'Channels'. Recherchez ensuite le package à installer. Si la case à côté du nom du package n’est pas cochée, cela signifie qu’elle n’est pas installée. Cochez la case à côté du nom du package pour le sélectionner.


Vous pouvez sélectionner de nombreux packages à installer en même temps. Cliquez ensuite sur « Appliquer » 'Apply' pour installer les packages Python sélectionnés. Le processus peut prendre quelques minutes.


Le gestionnaire de package conda affichera la liste de tous les packages sélectionnés ainsi que tous les packages dépendant. Cliquez sur « Appliquer » 'Apply' pour les installer tous.


2. Méthode 2: Invite Anaconda (interface de ligne de commande)

Dans l’invite Anaconda, utilisez la commande ci-dessous pour installer un package, en remplaçant le package par le nom du package.

conda install package

Par exemple, ci-dessous est la façon dont le package ‘pyproj’ est installé. Vous pouvez également utiliser la commande 'conda activate' pour passer de l’environnement 'base' à un environnement spécifique afin que le package soit installé sur cet environnement. Le gestionnaire de package conda vérifiera la compatibilité avec les packages précédemment installés et vous demandera si vous souhaitez procéder. Tapez 'y' et entrez dans 'proceed'.

Utilisation du gestionnaire de packages PIP

Le gestionnaire de packages pip est exécuté sur une interface de ligne de commande. Vous pouvez utiliser l’invite Anaconda ou l’invite de commande pour installer un package Python à l’aide d’une ligne de commande pip.

1. Installer des packages à partir du référentiel PyPI

Dans l’invite Anaconda ou l’invite de commande, utilisez la commande ci-dessous pour installer un package, en remplaçant le package par le nom du package. 

pip install package

Par exemple, ci-dessous est la façon dont le package ‘pyproj’ est installé. Vous pouvez également utiliser la commande 'conda activate' pour passer de l’environnement 'base' à un environnement spécifique afin que le package soit installé sur cet environnement.


2. Installer le package à partir de la roue ‘wheel’

Il est également possible d’installer certains packages à l’aide d’un fichier .whl (wheel-file). Les roues (wheels) peuvent être téléchargées ici: http://pythonwheels.com/ et http://www.lfd.uci.edu/~gohlke/pythonlibs/. Sélectionnez la roue ‘wheel’ contenant cp37 dans le nom de la version Python 3.7, win32 si une version de 32 bits de Python est utilisée et win_amd64 si la version 64 bits est utilisée. Après avoir téléchargé le fichier de roue du module, ouvrez l’invite Anaconda et changez le répertoire pour le répertoire où se trouve le fichier .whl. Vous pouvez changer le répertoire dans l’invite Anaconda à l’aide de la commande cd, comme illustré dans l’exemple ci-dessous.


3. Gestion de fichiers et dossier

  • os (Bibliothèque standard)

Cette bibliothèque fournit un moyen d’utiliser les fonctionnalités dépendantes du système d’exploitation. Les fonctions que le module OS fournit vous permettent d’interfacer avec le système d’exploitation sous-jacent sur lequel Python s’exécute – que ce soit Windows, Mac ou Linux : recherche, création, gestion de fichiers et de dossiers. Il s’agit d’une bibliothèque standard Python, ce qui signifie qu’elle n’a pas besoin d’être installée.


  • glob (Bibliothèque standard)

Le module glob trouve tous les noms de chemin correspondant à un modèle spécifié selon les règles utilisées par ‘Unix shell’, bien que les résultats soient retournés dans un ordre arbitraire. Il est utile dans toutes les situations où votre programme doit rechercher une liste de fichiers sur le système de fichiers ‘filesystem’. Si vous avez besoin d’une liste de noms de fichiers qui ont tous une extension, un préfixe ou une chaîne commune au milieu, utilisez glob au lieu d’écrire du code pour scanner le contenu du répertoire vous-même. Ce module est inclus dans les bibliothèques standards Python, ce qui signifie qu’il n’a pas besoin d’être installé.


Ce module crée des fichiers et des répertoires temporaires, ce qui est très utile lorsque vous avez besoin de faire quelques calculs à partir de résultats intermédiaires sans enregistrer les résultats intermédiaires dans votre mémoire de stockage. Ce module est inclus dans les bibliothèques standards Python, ce qui signifie qu’il n’a pas besoin d’être installé.


Ce module fournit plusieurs opérations de haut niveau sur des fichiers et des répertoires tels que la copie et la suppression de fichiers. Ce module est inclus dans les bibliothèques standards Python, ce qui signifie qu’il n’a pas besoin d’être installé.

4. Calcul numérique

Ce package est le package fondamental pour l’informatique scientifique, qui définit l’objet de tableau multidimensionnel avec des fonctions mathématiques pour opérer sur ces tableaux (Matlab-style). Ce package est pré-chargé dans l’environnement de base Anaconda, il devra être installé dans un nouvel environnement.


Ce package fournit de nombreuses routines numériques conviviales et efficaces telles que les routines d’intégration numérique, d’interpolation, d’optimisation, d’algèbre linéaire et de statistiques. Ce package est pré-chargé dans l’environnement de base Anaconda, il devra être installé dans un nouvel environnement.

5. Analyse de données de séries temporelles/tableau

Ce n’est pas l’ours noir et blanc, c’est une bibliothèque Python pour analyser les données. Pandas est un package Python populaire pour la science des données, et avec raison: il offre des structures de données puissantes, expressives et flexibles qui rendent la manipulation et l’analyse des données facile, entre autres choses. DataFrame est l’une de ces structures. Ce package est pré-chargé dans l’environnement de base Anaconda, il devra être installé dans un nouvel environnement.


Le module datetime fournit des classes pour manipuler les dates et les heures. Bien que l’arithmétique de la date et de l’heure soit prise en charge, l’implémentation met l’accent sur l’extraction efficace des attributs pour la mise en forme et la manipulation des résultats. Ce module est inclus dans les bibliothèques standards Python, ce qui signifie qu’il n’a pas besoin d’être installé.

6. Visualisation

Une bibliothèque de traçage python qui comprend : un traçage 2D facile à utiliser (style Matlab), des boîtes à outils pour le traçage 3D, des cartes (basemap), de l’animation, etc. Le module le plus fréquemment utilisé dans le matplotlib est le pyplot. Une collection de fonctions de style de commande qui font fonctionner Matplotlib comme MATLAB. Chaque fonction pyplot apporte un certain changement à une figure : par exemple, crée une figure, crée une zone de traçage dans une figure, trace quelques lignes dans une zone de traçage, décore le graph avec des étiquettes, etc. Ce package est pré-chargé dans l’environnement de base Anaconda, il devra être installé dans un nouvel environnement.

Le site officiel a documenté de nombreux exemples et tutoriels de l’introduction au niveau avancé. Il est également possible de faire un graph d’animation, une intrigue 3D avec des boîtes à outils matplotlib, ou de tracer pour le serveur d’applications Web.


Il s’agit d’une bibliothèque pour faire des graphiques statistiques dans Python. Il est construit sur le matplotlib et étroitement intégré avec les structures de données des pandas. Il fournit une interface de haut niveau pour dessiner des graphiques statistiques attrayants et informatifs. Seaborn vise à faire de la visualisation un élément central de l’exploration et de la compréhension des données. Ses fonctions de traçage orientées sur jeu de données opèrent sur des cadres de données et des tableaux contenant des ensembles de données et effectuent en interne la cartographie sémantique nécessaire et l’agrégation statistique pour produire des graphiques informatifs. Ce package est pré-chargé dans l’environnement de base Anaconda, il devra être installé dans un nouvel environnement.

7. Analyse de données multidimensionnelle/spatiales

‘Geospatial Data Abstraction Library’ est une bibliothèque de traducteurs pour les formats de données géospatiales raster et vectorielles de ‘Open Source Geospatial Foundation’  (osgeo). En tant que bibliothèque, il présente un modèle de données abstraite raster unique et un modèle de données abstraites vectorielles unique à l’application d’appel pour tous les formats pris en charge. Il est également livré avec une variété d’utilitaires de ligne de commande utiles pour la traduction et le traitement des données. Il prend de nombreux formats (pilotes) : GeoTIFF, HDF4, TIL, etc. Ce paquet n’est pas pré-chargé dans l’environnement de base Anaconda, il devra être installé.

  

La bibliothèque Python Shapefile (PyShp) fournit une prise en charge de lecture et d’écriture pour le format Shapefile de Esri. Le format Shapefile est un format de données vectorielles populaire du système d’information géographique créé par Esri. Ce package n’est pas pré-chargé dans l’environnement de base Anaconda, il devra être installé.

 

NetCDF est un ensemble de bibliothèques de logiciels et auto-décrivants, des formats de données (indépendants de la machine) qui soutiennent la création, l’accès et le partage de données scientifiques. Netcdf4-python est une interface Python de la bibliothèque netCDF C. NetCDF version 4 a de nombreuses fonctionnalités, ne se trouvent pas dans les versions antérieures de la bibliothèque et est implémenté au dessus de HDF5. Ce module peut lire et écrire des fichiers dans le nouveau format netCDF 4 et netCDF 3, et peut créer des fichiers lisibles par les clients HDF5. Ce package n’est pas pré-chargé dans l’environnement de base Anaconda, il devra être installé.

 

Il s’agit d’un package Python pour la manipulation et l’analyse d’objets géométriques planaires. Il est basé sur les bibliothèques GEOS (le moteur de PostGIS) et JTS (à partir de laquelle GEOS est porté). Shapely ne se préoccupe pas des formats de données ou des systèmes de coordonnées, mais peut être facilement intégré avec les packages qui le sont. Ce package n’est pas pré-chargé dans l’environnement de base Anaconda, il devra être installé.

  

Interface Python à PROJ (bibliothèque de projections cartographiques et de transformations de coordonnées). Ce package n’est pas pré-chargé dans l’environnement de base Anaconda, il devra être installé.

 

GeoPandas est un package Python pour faciliter le travail avec les données géospatiales en python. GeoPandas étend les types de données utilisés par les pandas pour permettre des opérations spatiales sur les types géométriques. Les opérations géométriques sont effectuées par shapely. Geopandas dépend en outre de fiona pour l’accès aux fichiers et de descartes et matplotlib pour le traçage. L’objectif de GeoPandas est de faciliter le travail avec les données géospatiales en python. Il combine les capacités des pandas et shapely, fournissant des opérations géospatiales dans pandas et une interface de haut niveau à plusieurs géométries vers shapely. GeoPandas vous permet de faire facilement des opérations en python qui nécessiteraient autrement une base de données spatiale comme PostGIS. Ce package n’est pas pré-chargé dans l’environnement de base Anaconda, il devra être installé.   


Il s’agit d’un package Python qui fonctionne avec des tableaux multidimensionnels étiquetés. Xarray introduit des étiquettes sous forme de dimensions, de coordonnées et d’attributs au-dessus des tableaux bruts de type NumPy, ce qui permet une expérience de développeur plus intuitive, plus concise et moins sujette aux erreurs. Le package comprend une vaste bibliothèque croissante de fonctions agnostiques de domaine pour l’analyse avancée et la visualisation avec ces structures de données. Xarray a été inspiré par et emprunte fortement aux pandas, le package populaire d’analyse de données axé sur les données tabulaires étiquetées. Il est particulièrement adapté au travail avec les fichiers netCDF, qui ont été la source du modèle de données de xarray, et s’intègre étroitement avec dask pour le cacul numérique en parallèle. Ce package n’est pas pré-chargé dans l’environnement de base Anaconda, il devra être installé.