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:00] Francesco Beretta |
||
---|---|---|---|
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**]] | ||
- | * 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//: | + | 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. |
- | * [[https://github.com/jupyterlab/jupyterlab-git|jupyterlab / jupyterlab-git]] | + | Cf. [[https://docs.python.org/fr/3/tutorial/venv.html|Environnements virtuels et paquets]]. |
- | * 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. | + | 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. |
- | \\ Une fois que vous avez activé votre environnement dans Anaconda, 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: | + | ====== Miniconda / Anaconda ====== |
- | * [[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]]) | + | * [[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 | ||
- | ====== 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 43: | ||
* 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 | ||
+ | |||
+ | |||
+ | |||
+ | ===== Gérer un environnement avec Conda ===== | ||
+ | |||
+ | |||
+ | \\ | ||
+ | Page dédiée de ce Wiki: | ||
+ | * **[[python:environnement_conda|Créer et gérer un environnement Conda]]** | ||
+ | |||
+ | \\ | ||
+ | |||
+ | |||
+ | |||
+ | |||
+ | * Lister les environnemnents disponibles <code>conda env list</code> | ||
* Créer ensuite un environnement contenant Jupyter Lab: conda create --name <envname> python=<version>. | * 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> | * <code> [suggestion:] conda create --name py37_gitlab python=3.7 jupyterlab=1.2.7 jupyterlab-git </code> | ||
Ligne 55: | Ligne 66: | ||
* 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_gitlab// puis relancer le Lab. | * 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]] | ||
\\ | \\ | ||
Ligne 61: | Ligne 73: | ||
==== Problèmes / Bugs ==== | ==== Problèmes / Bugs ==== | ||
- | === Problème au lancement de Anaconda === | + | Voir les [[python:bugs_connus_conda|Problèmes / Bugs]] connus concernant l'installation de Miniconda ou de ses plugins |
- | * Sous Windows, si le kernel ne démarre pas, avec l'erreur "manque win32api", insaller: <code>conda install pywin32</code> | ||
- | * Sous Windows 7 problème au lancement de Anaconda. Solution qui marche ([[https://github.com/ContinuumIO/anaconda-issues/issues/1467|Source]]) : | + | ====== Installation de JupyterLab et ses plugins ====== |
- | 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 "" | ||
- | 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>. | + | ====== Configuration des plugins JupyterLab ====== |
- | 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] | + | ===== JupyterLab git extension ===== |
- | Création de l'environnement en indiquant seulement la version python | + | 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]] | ||
- | <code>conda create --name py37_gitlab python=3.7</code> | + | **/!\ 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. | ||
- | activation de l'environnement | ||
- | <code>conda activate py37_gitlab</code> | + | 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 jupyterlab 1.2.7 | ||
- | <code>conda install jupyterlab=1.2.7</code> | ||
- | |||
- | 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> | ||
- | |||
- | 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. | ||
- | |||
- | :!: Mais il reste un problème : <code> "nbdime-jupyterlab@2.0.0" is not compatible with the current JupyterLab </code>. | ||
- | |||
- | 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 : | ||
- | |||
- | <code> jupyter nbextension disable --py nbdime</code> | ||
- | |||
- | Puis désinstallation : | ||
- | |||
- | <code>jupyter labextension uninstall nbdime-jupyterlab</code> | ||
- | |||
- | 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 ===== |