Outils pour utilisateurs

Outils du site


python:anaconda

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
Prochaine révision Les deux révisions suivantes
python:anaconda [2019/11/27 15:46]
Francesco Beretta [Installation de Miniconda]
python:anaconda [2022/02/19 15:39]
Francesco Beretta [Installation de JupyterLab]
Ligne 1: Ligne 1:
 +Retour à l'​accueil [[python:​accueil|Python pour les historiens]]
  
-===== Tutoriels / installation ​=====+======= Installer et configurer son environnement de travail Python =======
  
  
-  ​* [[https://​www.anaconda.com/​what-is-anaconda/​|Ce qu'est Anaconda]] – [[https://​docs.conda.io/​projects/​conda/​en/​latest/​index.html|ce qu'​est ​**Conda**]] +===== Gestion de l'​environnement de travail ===== 
-  * Insaller ​[[https://www.anaconda.com/​download/​|Anaconda]] ou [[https://conda.io/​miniconda.html|Miniconda]], ​dans les deux cas la **version Python ​3.7**  + 
-    * Quelle différence entre Anaconda et Miniconda ?  Anaconda apporte, en plus du gestionnaire d'​environnements Python conda, une interface graphique complète et différents logiciels. L'​environnement risque d'​être un peu lourd – pour des petits projets Miniconda est préférable. +[...] 
-    * Sous Windows choisir ​la version adaptée au système: 32 ou 64 bits+ 
 + 
 + 
 +===== Gestion des environnements virtuels ===== 
 + 
 + 
 +Les environnements virtuels fournissent un moyen puissant pour isoler les paquets utilisés dans un projet utilisant Python et leurs dépendances. Cela signifie que vous pouvez utiliser des paquets particuliers à un projet sans les installer sur l’ensemble du système, en évitant ainsi les conflits de version potentiels et en assurant la cohérence de l'​environnement. 
 +Cf. [[https://​docs.python.org/​fr/​3/​tutorial/​venv.html|Environnements virtuels et paquets]]. 
 + 
 +Plusieurs outils de gestion d'​environnements virtuels existent, construits autour de PIP (cf. documentation officielle de Python). Comme nous pratiquons ici une approche orientée analyse de données (et non développement web ou développement d'​applications),​ nous avons privilégié le gestionnaire de paquets Conda (cf. ci-dessous),​ ainsi qu'un édrivé plus performant appelé [[https://​mamba.readthedocs.io/​en/​latest/​index.html|Mamba]].  
 + 
 +Ces deux gestionnaires d'​environnements permettent d'​installer des paquets d'​autres langages informatiques,​ tel R, node.js ou java. Il est donc particulièrement intéressant et fléxible pour notre but. 
 + 
 + 
 +====== Miniconda / Anaconda ====== 
 + 
 +  ​* [[https://​www.anaconda.com/​what-is-anaconda/​|Ce qu'est Anaconda]] – [[https://​docs.conda.io/​projects/​conda/​en/​latest/​index.html|ce qu'est Conda]] 
 +  * Installer ​[[https://docs.conda.io/en/latest/​miniconda.html|Miniconda]]. Dans le cadre de ce tutoriella version de python de référence est la **3.9**. 
 +    * Quelle différence entre Anaconda et Miniconda ? [[https://​www.anaconda.com/​download/​|Anaconda]] apporte, en plus du gestionnaire d'​environnements Python ​//conda//, une interface graphique complète et différents logiciels. L'​environnement risque d'​être un peu lourd – pour des petits projets ​**Miniconda** est préférable. ​Il n'est pas recommandé,​ dans le cadre de cet atelier, de créer un environnement avec le logiciel Anaconda, car cela pose problème par la suite.
   * [[https://​zestedesavoir.com/​tutoriels/​1448/​installer-un-environnement-de-developpement-python-avec-conda|Tutoriel en français]] concernant l'​utilisation de //conda//.   * [[https://​zestedesavoir.com/​tutoriels/​1448/​installer-un-environnement-de-developpement-python-avec-conda|Tutoriel en français]] concernant l'​utilisation de //conda//.
   * [[https://​docs.conda.io/​projects/​conda/​en/​latest/​user-guide/​getting-started.html|Tutoriel en anglais]] de conda   * [[https://​docs.conda.io/​projects/​conda/​en/​latest/​user-guide/​getting-started.html|Tutoriel en anglais]] de conda
 +
  
  
 ===== Installation de Miniconda ===== ===== Installation de Miniconda =====
  
-préférer car environnement plus léger (mais à utiliser en ligne de commande).+**Miniconda est à préférer car c'​est ​environnement ​beaucoup ​plus léger** (mais à utiliser en ligne de commande).
  
-  * Télécharger Miniconda et installer en suivant les instructions de l'​installateur +  * Télécharger ​[[https://​docs.conda.io/​en/​latest/​miniconda.html|Miniconda]] et installer en suivant les instructions de l'​installateur. Sous Windows et Linux choisir la version adaptée ​au système : 32 ou 64 bits.
-  * Relever l'​emplacement d'​installation +
-    * En général, C:​\Users\[nom utilisateur]\Minconda3 +
-  * Cocher : Conda comme installation Python par défaut +
-  * Cocher "​Ajouter ​au PATH" !  +
-  * Si Conda n'est pas ajouté au PATH, utiliser le programme //Anaconda prompt// après installationSi Conda n'est toujours pas visible, voir ci-dessous les Problèmes/​bugs+
  
 +===== Windows et MacOS =====
  
 +  * Relever l'​emplacement d'​installation
 +    * En général sous Windows C:​\Users\[nom utilisateur]\Miniconda3
 +  * Cocher : **Conda comme installation Python par défaut**
 +  * **Ne pas cocher**: ​ "​Ajouter au PATH" ! 
 +    * [Octobre 2020] L'​installateur de Miniconda dans Windows 10 déconseille de l'​ajouter au PATH, à cause de problèmes qui pourraient survenir.
 +    * Dans le menu de démarrage Windows (Windows Start menu) sélectionner "​Anaconda 64bit"​. L'​ajout au PATH peut provoquer des problèmes.
 +    * Conda n'est pas ajouté au PATH, utiliser le programme //Anaconda prompt// après installation. Si Conda n'est toujours pas visible, voir ci-dessous les Problèmes/​bugs
  
 [[https://​docs.conda.io/​projects/​conda/​en/​latest/​user-guide/​getting-started.html|Tutoriel]] d'​introduction a l'​utilisation de //conda// [[https://​docs.conda.io/​projects/​conda/​en/​latest/​user-guide/​getting-started.html|Tutoriel]] d'​introduction a l'​utilisation de //conda//
  
-        ​ 
-        ​ 
-        ​ 
  
 +===== Vérification de l'​installation =====
 +
 +  ​
 Sous Windows, lancer le programme //Anaconda prompt//, sous Mac ouvrir le //​Terminal//:​ Sous Windows, lancer le programme //Anaconda prompt//, sous Mac ouvrir le //​Terminal//:​
-  * Vérifier l'​installation de Conda en exécutant la commande ci-dessous qui donne la liste des paquets installés dans l'​environnement de base: <​code>​conda list</​code>​+  * Vérifier l'​installation de Conda en exécutant la commande ci-dessous qui donne la version de conda: ​ <​code>​conda info</​code>​ 
 +  * la liste des paquets installés dans l'​environnement de base: <​code>​conda list</​code>​ 
 +  * la liste des environnements disponibles:​ <​code>​conda env list</​code>​  
 +    * Au début il n'y aura que l'​nevironnement de '​base'​ 
 +    * Attention : n'​installer aucun paquet dans l'​environnement de base ! Toujours créer un nouvel environnement.
   * En cas d'​erreur,​ si par exemple CMD (Windows) / Terminal (MacOS) renvoit le message d'​erreur suivant <​code>​conda:​ command not found error</​code>​ voir Problèmes / Bugs ci-dessous.   * En cas d'​erreur,​ si par exemple CMD (Windows) / Terminal (MacOS) renvoit le message d'​erreur suivant <​code>​conda:​ command not found error</​code>​ voir Problèmes / Bugs ci-dessous.
   * Exécuter tout d'​abord une mise à jour de Conda: ​ <​code>​conda update conda</​code>​   * Exécuter tout d'​abord une mise à jour de Conda: ​ <​code>​conda update conda</​code>​
     * Lorsque l'​exécutable imprime la liste des paquets à mettre à jour et  demande: installer y/n ? répondre y = yes     * Lorsque l'​exécutable imprime la liste des paquets à mettre à jour et  demande: installer y/n ? répondre y = yes
-  ​* Créer ensuite un environnement contenant Jupyter Lab: <​code>​conda create --name ​py37_lab ​python=3.7 jupyterlab ​lxml requests</​code>​ + 
-  * Pour Windows ​taper: <​code>​conda create --name ​py37_lab ​python=3.7 jupyterlab pywin32 ​lxml requests</​code>​ + 
-  * Lorsque l'​exécutable demande: installer y/n répondre y = yes + 
-  * Activer le nouvel environnement : <​code>​conda activate ​py37_lab</​code>​+===== Gérer un environnement avec Conda ===== 
 + 
 + 
 +\\ 
 +Pages dédiées dans ce Wiki: 
 + 
 +  * [[intro_histoire_numerique:​conda_histoire_numerique|Environnement pour le cours histoire numérique]] 
 +  * [[python:​environnement_conda|Créer et gérer un environnement Conda]] (dans ce tutoriel Python) 
 + 
 +\\ 
 + 
 + 
 +\\ 
 + 
 + 
 + 
 + 
 + 
 + 
 + 
 +====== Installation de JupyterLab ====== 
 + 
 + 
 +  * Lister les environnemnents disponibles <​code>​conda env list</​code>​ 
 +  * Ajouter le canal '​conda-forge'​ : <​code>​conda config --add channels conda-forge</​code>​ 
 +  * Vérifier l'​ajout du canal <​code>​conda info</​code>:​ apparait la liste des canaux 
 +  * Vérifier la liste des canaux prioritaires:​ <​code>​conda config --show channels</​code>​ doit donner comme résultat:​ 
 +<​code>​channels:​ 
 +  - conda-forge 
 +  - defaults 
 +</​code>​ 
 + 
 + 
 + 
 +  ​* Créer ensuite un environnement contenant Jupyter Lab: conda create --name <​envname>​ python=<​version>​. 
 +  * Pour **MacOS** exécuter:  ​<​code>​conda create --name ​py37_jupyterlab ​python=3.7 jupyterlab=1.2.7 ​requests</​code>​ 
 +  * Pour **Windows** système à 32-bit exécuter: <​code>​conda create --name ​py37_jupyterlab ​python=3.7 jupyterlab pywin32 requests</​code>​ 
 + 
 +  * Lorsque l'​exécutable demande : installer y/n répondre y = yes 
 + 
 + 
 +  * Activer le nouvel environnement : <​code>​conda activate ​py37_jupyterlab</​code>​ 
 +  * Pour désactiver l'​environnement et revenir à l'​environnement 'base: <​code>​conda deactivate</​code>​
   * Démarrer Juypter Lab : <​code>​jupyter lab</​code>​   * Démarrer Juypter Lab : <​code>​jupyter lab</​code>​
-  * Si on veut ajouter des nouveau paquets à l'​environnement,​ arrêter Jupyter Lab (alt-C pour Windows ou ctrl-C pour Mac), puis ajouter les paquets à l'​environnement actif, dans ce cas //py37_lab// puis relance ​le Lab.+  ​* Pour **arrêter Jupyter Lab**: taper dans le Terminal ou Prompt où il est actif **alt-C** pour Windows ou **ctrl-C** pour Mac. 
 +  ​* Si on veut ajouter des nouveau paquets à l'​environnement, ​**arrêter Jupyter Lab** , puis ajouter les paquets à l'​environnement actif, dans ce cas //py37_gitlab// puis relancer ​le Lab. 
 +  * Pour utiliser différents environnements,​ dédiés à différents projets ou technologies (NLP, etc.) voir les [[python:​environnement_conda&#​creer_un_nouvel_environnement_atelier_et_l_ajouter_aux_kernels_de_jupyter_lab|instructions sur cette page]]
  
  
 +\\
 +--------------
 +
 +====== Utilisateurs avancés – Plugins de JupyterLab ======
 +
 +
 +L'​installation de ce qui suit n'est pas nécessaire pour les cas d'​usage habituels.
  
 \\ \\
  
 +===== Plugin jupyterlab-github =====
  
 +
 +  * Documentation [[https://​github.com/​jupyterlab/​jupyterlab-github|JupyterLab GitHub]].
 +  * **Arrêter Jupyter Lab** (dans le Terminal ou Prompt où il est actif taper **alt-C** pour Windows ou **ctrl-C** pour Mac).
 +  * Vérifier qu'on est bien dans l'​environnement '​py37_jupyterlab' ​
 +  * Exécuter: <​code>​conda install -c conda-forge nodejs</​code>​
 +  * Exécuter: <​code>​ jupyter labextension install @jupyterlab/​github</​code>​
 +  * Démarrer Juypter Lab : <​code>​jupyter lab</​code>​
  
  
 +Sur l'​interface JupyterLab, à gauche vous avez une barre de menu.
 \\ \\
 +Cliquez sur l'​icône Puzzle "​**Extension Manager**"​ (gestionnaire des plugins). Un message de sécurité indique que les Plugins (extensions) de JupyterLab sont produits par la commuanté et que donc il peut y avoir des risques de sécurité. C'est bon à savoir mais il faut tout de même répondre: OUI.
 +
 +
 +Dans la barre de recherche, cherchez "​**github**"​. Le plugin qui nous intéresse est celui-ci :
 +
 +{{:​wiki:​pluginjupyterlabgithub.png|}}
 +
 +Cliquez "​Install"​ et validez le popup qui s'​affiche. Une fois l'​extension installée, JupyterLab vous demandera de "​Rebuild"​. Cliquez **Rebuild** dans la barre bleue qui est apparue au dessus du gestionnaire des plugins. Après quelques instants, un popup qui confirme le succès du Rebuild s'​affiche,​ cliquez sur **Reload**.
 +
 +Observez maintenant le menu à gauche : si vous voyez une icône avec un chat {{:​wiki:​logogithub.png?​30|}} : l'​installation du plugin est un succès. Cliquez dessus. Ce plugin vous demande d'​entrer un nom d'​utilisateur Github afin d'​accéder à ses dépôts.
 +
 +Dans le cadre de l'​atelier Données FAIR (FAIR Data), nous pouvons par exemple utiliser **atterebf** comme nom d'​utilisateur. Une liste de dépôt github s'​affiche,​ sélectionnez **atelier_arhn**,​ puis **import_csv_xls**,​ et enfin le carnet jupyter **import_csv.ipynb** (qui est en lecture seule).
 +
 +
 +\\
 +===== Plugin jupyterlab-git =====
 +
 +Pour les utilisateurs les plus avancés, maîtrisant le GIT, ce plugin peut vous être utile pour versionner vos travaux. Fermez toutes instances de JupyterLab.
 +
 +Ouvrez un terminal, activez votre environnement virtuel (conda activate <​envname>​) et installez le package jupyterlab-git:​ **pip install --upgrade jupyterlab-git**
 +
 +Lancez JupyterLab. Un message vous demandera d'​installer les extensions jupyterlab-git et nbdime-jupyter. Acceptez. Patientez un moment le temps que le Rebuild se fasse.
 +
 +Observez les onglets : l'​icône de Git apparaît, allez-y dessus. ​
 +
 +A la base, il n'y a aucun dépôt git reconnu. Cliquez Find a repository. Il vous menera en fait à l'​onglet Explorateur de dossiers.
 +
 +Vous avez la aussi une nouvelle icône Git à droite de la petite barre de menus en haut qui vous proposera de Cloner un dépôt (Clone a repository),​ ou bien allez dans un dossier qui vous intéresse avec l'​explorateur de dossiers, positionnez vous dans le dossier concerné, allez sur "​Git"​ dans le menu horizontal en haut, choisissez "​Init",​ un popup vous demande si vous êtes sûr de transformer le dossier en dossier git : confirmez. Attention, en fonction du volume du dossier, le traitement peut être long, privilégiez un dossier avec peu de fichiers.
 +
 +Revenez sur l'​onglet Git : vous verrez qu'il est possible de gérer les fichers. Les fichiers peuvent être "​Untracked"​ (non suivis), "​Changed"​ (modifiés mais non admis dans le prochain commit) ou "​Staged"​ (admis dans le prochain commit). Plus bas dans la colonne, vous pouvez écrire le message du commit et envoyer le commit sur votre branche actuelle.
 +
 +Plus haut vous pouvez aussi constater "​Current Repository",​ "​Current Branch"​ qui vous permettra de gérer les branches.
  
  
 -------- --------
-===== Problèmes / Bugs ===== 
  
-==== Problème au lancement de Anaconda ====+\\
  
-  * Sous Windows, si le kernel ne démarre pas, avec l'​erreur "​manque win32api",​ insaller: <​code>​conda install pywin32</​code>​+===== JupyterLab git extension =====
  
-  * Sous Windows 7 problème au lancement de Anaconda. Solution qui marche ([[https://​github.com/​ContinuumIO/​anaconda-issues/​issues/​1467|Source]]) :​ 
  
-PROBLEM: Anaconda Navigator won't start (nor will Spyder, IPython, ...). Error is reported: + ​jupyterlab-git ​
-This application failed to start because it could not find or load the Qt platform plugin "​windows"​ in ""​+
  
-SOLUTION: +jupyterlab-git jupyterlab-github
-Copier le dossier +
-Continuum\Anaconda3\Library\plugins\platforms +
-vers le dossier +
-Continuum\Anaconda3+
  
-   * Sous Windows 10 problème lorsque on teste <​code>​conda list</​code>​ renvoit l'​erreur : <​code>​conda:​ command not found error</​code>​. 
-SOLUTION: ​ 
-     * voir cette documentation : [[https://​support.anaconda.com/​hc/​en-us/​articles/​360023863234-Conda-command-not-found-error|Conda:​ "​command not found" error]], complété par **[[https://​stackoverflow.com/​questions/​44597662/​conda-command-is-not-recognized-on-windows-10?​answertab=active#​tab-top|ces explications très utiles]]**. 
-     * voir éventuellement cette [[https://​stackoverflow.com/​questions/​18675907/​how-to-run-conda?​answertab=active#​tab-top|documentation supplémentaire] 
  
 +Documentation concernant //​JupyterLab git extension//:​
 +  * [[https://​github.com/​jupyterlab/​jupyterlab-git|jupyterlab / jupyterlab-git]] ​
 +  * Tutoriel [[https://​annefou.github.io/​jupyter_publish/​02-git/​index.html|JupyterLab git extension]]
 +  * Un tutoriel très intéressant sur Jupyter Lab dont la partie 3 concerne GitHub: [[http://​jakevdp.github.io/​blog/​2017/​03/​03/​reproducible-data-analysis-in-jupyter/​|Reproducible Data Analysis in Jupyter]]
 +
 +**/!\ Avant de faire le tutoriel, réfléchissez si vous devez créer un nouveau environnement virtuel, si vous avez déjà d'​autres projets en cours.** Il est donc préférable de créer un environnement en ligne de commande. Voir ci-dessous pour l'​installation de l'​environnement.
 +\\ Une fois que vous avez activé votre environnement dans Miniconda, pensez à installer **JupyterLab**. Jupyter Notebook sera automatiquement installé avec.
 +\\ Une fois JupyterLab installé, lancez le, il s'​affichera sur votre navigateur.
 +
 +
 +Les paquets pour conda:
 +  * [[https://​anaconda.org/​conda-forge/​jupyterlab-git|jupyterlab-git]] ([[https://​github.com/​jupyterlab/​jupyterlab-git|documentation sur GitHub]])
 +  * [[https://​anaconda.org/​krinsman/​jupyterlab-github|jupyterlab-github]] ([[https://​github.com/​jupyterlab/​jupyterlab-github|Documentation sur Github]])
 +
 +
 +
 +\\
 +====== Problèmes / Bugs ======
  
 +Voir les [[python:​bugs_connus_conda|Problèmes / Bugs]] connus concernant l'​installation de Miniconda, JupyterLab et ses plugins
python/anaconda.txt · Dernière modification: 2024/02/23 01:38 par Francesco Beretta