Ci-dessous, les différences entre deux révisions de la page.
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 [2020/04/17 10:45] Vincent Alamercery |
python:anaconda [2020/09/29 13:06] Francesco Beretta [Installer et configurer son environnement de travail Python] |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
Retour à l'accueil [[python:accueil|Python pour les historiens]] | Retour à l'accueil [[python:accueil|Python pour les historiens]] | ||
- | ====== Tutoriels / installation ====== | + | ======= Installer et configurer son environnement de travail Python ======= |
- | ===== Anaconda/Miniconda ===== | ||
- | * [[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 ===== |
- | * Installer [[https://www.anaconda.com/download/|Anaconda]] ou [[https://docs.conda.io/en/latest/miniconda.html|Miniconda]]. Dans le cadre de ce tutoriel, la version de python pouvant être utilisée est la **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. 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://docs.conda.io/projects/conda/en/latest/user-guide/getting-started.html|Tutoriel en anglais]] de conda | + | |
- | ===== JupyterLab git extension ===== | + | [...] |
- | 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 Anaconda, pensez à installer **JupyterLab**. Jupyter Notebook sera automatiquement installé avec. | + | ===== Gestion des environnements virtuels ===== |
- | \\ Une fois JupyterLab installé, lancez le, il s'affichera sur votre navigateur. | + | |
+ | |||
+ | 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). De plus, Conda permet 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 tutoriel, la version de python pouvant être utilisée est la **3.7**. | ||
+ | * 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://docs.conda.io/projects/conda/en/latest/user-guide/getting-started.html|Tutoriel en anglais]] de conda | ||
- | 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]]) | ||
- | ====== Installation de Miniconda avec JupyterLab et ses plugins ====== | + | ===== Installation de Miniconda ===== |
**Miniconda est à préférer car c'est environnement beaucoup 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). | ||
Ligne 48: | Ligne 50: | ||
* 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: conda create --name <envname> python=<version>. | ||
- | * <code> [suggestion:] conda create --name py37_gitlab python=3.7 jupyterlab=1.2.7 jupyterlab-git </code> | ||
- | * Pour Windows taper: <code>conda create --name py37_gitlab python=3.7 jupyterlab pywin32 jupyterlab-git jupyterlab-github requests</code> | ||
- | * Lorsque l'exécutable demande : installer y/n répondre y = yes | ||
- | * Activer le nouvel environnement : <code>conda activate py37_gitlab</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_gitlab// puis relancer le Lab. | ||
- | \\ | ||
- | \\ | ||
- | -------- | ||
- | ==== 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> | + | ===== Gérer un environnement avec Conda ===== |
- | * 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: | + | \\ |
- | This application failed to start because it could not find or load the Qt platform plugin "windows" in "" | + | Page dédiée de ce Wiki: |
+ | * **[[python:environnement_conda|Créer et gérer un environnement Conda]]** | ||
- | SOLUTION: | + | \\ |
- | 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]] | ||
- | ===== Linux Ubuntu 18.04 - Mint 19 ===== | + | \\ |
- | [Étapes suivies dans Linux Mint 19.3 Tricia - Pierre 2020-04-02] | ||
- | Création de l'environnement en indiquant seulement la version python | ||
- | <code>conda create --name py37_gitlab python=3.7</code> | ||
- | activation de l'environnement | ||
- | <code>conda activate py37_gitlab</code> | ||
- | installation de jupyterlab 1.2.7 | ||
- | <code>conda install jupyterlab=1.2.7</code> | + | ====== Installation de JupyterLab et ses plugins ====== |
- | installation de nodejs (qui n'est pas installé avec jupyterlab 1.2.7 d'où problème ensuite pour gérer les extensions) : | ||
- | <code>conda install -c conda-forge nodejs</code> | ||
- | installation de jupyterlab-git : | ||
- | <code>conda install -c conda-forge jupyterlab-git</code> | + | * Lister les environnemnents disponibles <code>conda env list</code> |
+ | * Créer ensuite un environnement contenant Jupyter Lab: conda create --name <envname> python=<version>. | ||
+ | * <code> [suggestion:] conda create --name py37_gitlab python=3.7 jupyterlab=1.2.7 jupyterlab-git </code> | ||
+ | * Pour Windows taper: <code>conda create --name py37_gitlab python=3.7 jupyterlab pywin32 jupyterlab-git jupyterlab-github requests</code> | ||
+ | * Lorsque l'exécutable demande : installer y/n répondre y = yes | ||
+ | * Activer le nouvel environnement : <code>conda activate py37_gitlab</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_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]] | ||
- | lancer jupyterlab : | + | \\ |
- | <code>jupyter lab</code> | ||
- | * Ensuite, suivre les indications qui suivent pour les extensions jupyterlab-git (accepter la proposition d'installation du "Server companion" jupyterlab_git (avec un underscore), puis jupyterlab-github. :!: Après avoir cliqué sur l'icône "puzzle" (pour les extensions), il faut attendre un peu avant que la liste des extensions s'affiche. | + | ===== JupyterLab git extension ===== |
- | :!: Mais il reste un problème : <code> "nbdime-jupyterlab@2.0.0" is not compatible with the current JupyterLab </code>. | + | 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]] | ||
- | J'ai donc essayé de remplacer la version de nbdime.2.0.0 par la nbdime.1.1.0. D'abord on désactive nbdime : | + | **/!\ 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. | ||
- | <code> jupyter nbextension disable --py nbdime</code> | ||
- | Puis désinstallation : | + | Les paquets pour conda: |
- | + | * [[https://anaconda.org/conda-forge/jupyterlab-git|jupyterlab-git]] ([[https://github.com/jupyterlab/jupyterlab-git|documentation sur GitHub]]) | |
- | <code>jupyter labextension uninstall nbdime-jupyterlab</code> | + | * [[https://anaconda.org/krinsman/jupyterlab-github|jupyterlab-github]] ([[https://github.com/jupyterlab/jupyterlab-github|Documentation sur Github]]) |
- | + | ||
- | Installation de la version 1.1.0 | + | |
- | + | ||
- | <code>jupyter labextension enable nbdime@1.1.0</code> | + | |
- | + | ||
- | <code>jupyter lab build</code> | + | |
- | + | ||
- | <code>jupyter labextension install nbdime-jupyterlab</code> | + | |
- | Après avoir fermé puis relancé Jupyterlab le problème semble avoir disparu. En tout cas, il est possible d'accéder au carnet jupyter **import_csv.ipynb** évoqué plus loin. | ||
- | ====== Configuration des plugins JupyterLab ====== | ||
===== Plugin jupyterlab-github ===== | ===== Plugin jupyterlab-github ===== | ||
Ligne 164: | Ligne 138: | ||
Plus haut vous pouvez aussi constater "Current Repository", "Current Branch" qui vous permettra de gérer les branches. | Plus haut vous pouvez aussi constater "Current Repository", "Current Branch" qui vous permettra de gérer les branches. | ||
+ | |||
+ | -------- | ||
+ | |||
+ | \\ | ||
+ | ====== Problèmes / Bugs ====== | ||
+ | |||
+ | Voir les [[python:bugs_connus_conda|Problèmes / Bugs]] connus concernant l'installation de Miniconda, JupyterLab et ses plugins |