Cours
Il y a plus d’un an, nous avons lancé DataCamp Workspace, notre IDE de notebook dans le cloud, conçu pour permettre aux praticiens et aux équipes de travailler les données et de collaborer en ligne sans friction. Aujourd’hui, des milliers de personnes et d’équipes utilisent Workspace pour analyser des données et partager leurs insights, créer des projets de portfolio et participer à des compétitions.
Nous avons récemment migré nos espaces de travail RStudio vers l’éditeur de notebooks de DataCamp ou JupyterLab. Les utilisateurs de R bénéficient ainsi des toutes dernières fonctionnalités de Workspace, notamment le partage, la collaboration, les commentaires, l’intégration native de SQL, et bien plus encore. Dans cet article, nous présentons les fonctionnalités clés de JupyterLab, ses différences avec RStudio et comment les utilisateurs de R peuvent tirer parti de l’éditeur de notebooks de DataCamp.

JupyterLab : une interface de notebook nouvelle génération
JupyterLab est un environnement de développement interactif, accessible via le web, pour des notebooks R et Python, ainsi que d’autres langages. Spécialement pensé pour les workflows de data science et de machine learning, il propose une interface riche composée d’un notebook, d’un terminal, d’un éditeur de texte et d’un explorateur de fichiers. Sa conception modulaire permet aussi à la communauté open source de créer des extensions pour enrichir ses fonctionnalités. Dans JupyterLab, le résultat de chaque cellule de code s’affiche dès son exécution. Comme dans un notebook R Markdown, il est possible d’alterner blocs de code et annotations en Markdown.

Aperçu de l’interface JupyterLab dans DataCamp Workspace
JupyterLab ≈ RStudio
JupyterLab et RStudio sont deux environnements de développement intégrés (IDE) très répandus pour le langage R. À quelques nuances près, leur usage et leurs fonctions sont proches. Entre autres, RStudio propose un gestionnaire de fichiers, un terminal, un explorateur de variables et même un panneau d’aide sur les fonctions. Ces éléments permettent d’accéder facilement aux fichiers et réglages, et d’accélérer l’analyse. On retrouve beaucoup de ces fonctionnalités dans JupyterLab. Dans cette section, nous passons en revue les principaux composants de l’interface JupyterLab.
La barre latérale
La barre latérale de gauche contient cinq icônes :
- Un explorateur de fichiers pour ouvrir différents fichiers
- Terminaux et noyaux en cours d’exécution pour visualiser les processus actifs
- Git pour gérer les dépôts
- Table des matières pour parcourir la structure du notebook
- Gestionnaire d’extensions pour installer des extensions de notebook
Aperçu du gestionnaire de fichiers
Terminaux et noyaux en cours d’exécution

Aperçu de la table des matières

Aperçu du gestionnaire d’extensions
La zone de travail principale
La zone de travail principale est l’endroit où l’on écrit du code, exécute des commandes shell et modifie la documentation en Markdown. Comme dans RStudio, vous pouvez personnaliser la disposition selon vos préférences. Vous pouvez vous concentrer sur un seul volet ou travailler sur plusieurs volets en parallèle.

Interface personnalisable de JupyterLab
La barre de menus
Comme dans RStudio, la barre de menus regroupe des options et rubans permettant d’effectuer les actions suivantes :
- Fichier pour ouvrir, enregistrer et télécharger des notebooks, entre autres
- Édition pour modifier le contenu des cellules (annuler, rétablir, supprimer, scinder une cellule)
- Affichage pour personnaliser les volets visibles dans JupyterLab
- Exécuter pour lancer des blocs de code dans les notebooks Jupyter
- Kernel pour interrompre ou arrêter un noyau en cours d’exécution (nous y revenons plus loin)
- Git pour gérer les dépôts et le versioning
- Onglet pour naviguer entre les onglets de JupyterLab
- Paramètres pour personnaliser l’apparence de JupyterLab
- Aide pour accéder à la documentation de JupyterLab

Barre de menus supérieure de JupyterLab
Le moteur d’exécution de JupyterLab : le noyau (kernel)
Un terme récurrent quand on travaille avec Jupyter est « kernel ». Le noyau est le processus qui exécute le code et interagit avec les applications Jupyter comme JupyterLab. On peut le voir comme le moteur qui fait tourner le code contenu dans un notebook Jupyter. Le noyau continue de s’exécuter même lorsque le document du notebook, la console de code ou le terminal sont fermés. Vous pouvez donc lancer des traitements longs (et éventuellement fermer le document du notebook) puis revenir plus tard.
Pour voir tous les noyaux en cours, ouvrez l’onglet « Terminaux et noyaux en cours d’exécution ». Vous pouvez y rouvrir le notebook associé à un noyau donné.

Volet latéral des terminaux et noyaux en cours d’exécution
Plusieurs actions liées au noyau sont disponibles, notamment :
- Interrompre un noyau : arrête l’exécution du code du notebook, tout en conservant ses variables.
- Arrêter un noyau : interrompt le noyau et efface tous les états et variables du notebook.
- Redémarrer un noyau : arrête le noyau actuel et en lance un nouveau.

La barre de menu du noyau
Premiers pas avec JupyterLab
Passons en revue la création d’un nouveau notebook et l’exécution d’une analyse avec JupyterLab. Vous pouvez suivre ces instructions en ouvrant un nouveau jeu de données ou un modèle via DataCamp Workspace.
Créer un document
Vous pouvez créer un nouveau notebook dans JupyterLab via le menu Fichier > Nouveau > Notebook, à l’image de RStudio. Vous pouvez aussi cliquer sur le bouton bleu + en haut à gauche pour ouvrir de nouveaux fichiers.

Ouverture d’un nouveau fichier dans JupyterLab
Écrire et exécuter du code
Un notebook JupyterLab est composé de plusieurs blocs, contenant soit du Markdown, soit du code. Un bloc de code dans JupyterLab est similaire à un chunk dans un RNotebook.
Pour créer un bloc, cliquez sur le bouton + en haut de la console. Pour exécuter un bloc de code, utilisez le bouton ▶ (ou Cmd+Entrée sur Mac, ou Ctrl+Entrée sur Windows). Comme dans RStudio, la sortie s’affiche sous le bloc de code après exécution. Notez que chaque bloc de code s’exécute en une fois, à l’instar de la fonction « exécuter le chunk courant » dans RStudio.
Dans RStudio, chaque ligne peut être exécutée individuellement (Exécuter > Exécuter les lignes sélectionnées). Ce n’est pas le cas dans JupyterLab. Pour exécuter deux lignes séparément, il faut scinder les lignes en deux blocs de code via la fonction de scission de cellule (Édition > Scinder la cellule).

Exécution d’une cellule de code dans JupyterLab
Gérer les fichiers
Comme dans RStudio, JupyterLab propose un gestionnaire de fichiers pour naviguer dans les répertoires. Vous pouvez créer, renommer, déplacer et dupliquer des fichiers.

Gestionnaire de fichiers dans JupyterLab
Annoter le code avec Markdown
Les annotations sont essentielles pour rendre un notebook lisible. Dans Jupyter Notebook comme dans RStudio, vous pouvez contextualiser votre code grâce à des segments en Markdown.
Pour utiliser le Markdown, créez un nouveau bloc de code, puis convertissez-le en bloc Markdown. Vous pouvez ensuite appliquer la syntaxe Markdown pour mettre en forme votre texte.

Utiliser le Markdown dans JupyterLab
Ceci diffère légèrement de RNotebook, où il n’est pas nécessaire de créer un bloc séparé pour le Markdown. Lors du tricotage, le notebook est converti en document HTML, affichant correctement code et Markdown.
Enregistrer et publier un notebook
L’enregistrement dans JupyterLab fonctionne comme dans RStudio : les deux enregistrent automatiquement le notebook à intervalles réguliers.
JupyterLab permet d’exporter les fichiers de notebook Jupyter (.ipynb) vers d’autres formats, notamment HTML, LaTeX, Markdown et PDF. Pour ce faire, allez dans Fichier > Enregistrer et exporter le notebook en tant que… > Format de sortie souhaité.

Enregistrer et exporter un notebook
Ce n’est sans doute pas une surprise pour les utilisateurs de RStudio. Lors de l’aperçu d’un fichier RNotebook, RStudio enregistre automatiquement une page HTML au format .nb.html.
Ouvrir un terminal et une console de code
Le terminal est l’interface d’exécution des commandes shell. Il est utile lorsque l’on doit exécuter du code R et des commandes shell de manière interactive. Dans JupyterLab, rendez-vous sur Fichier > Nouveau > Terminal. Cela peut surprendre les utilisateurs de RStudio, où l’onglet Terminal est affiché par défaut.
Ouvrir un terminal dans JupyterLab
Personnaliser les thèmes
JupyterLab est livré avec un thème sombre par défaut (Paramètres > Thème > Sombre). Vous pouvez également installer d’autres thèmes via le gestionnaire d’extensions.

Thème sombre de JupyterLab
JupyterLab vs RStudio
JupyterLab et RStudio sont proches, mais pas identiques. Voici deux différences notables.
- Licences : le projet Jupyter est diffusé sous licence BSD modifiée. RStudio, lui, est publié sous licence Affero General Public License.
- Fonctionnalités : certaines fonctions Markdown ne sont pas prises en charge nativement dans les notebooks Jupyter, comme les en-têtes YAML pour définir le thème, configurer la table des matières ou les paramètres avancés d’apparence du code.
Au-delà de JupyterLab et RStudio : l’éditeur de notebooks DataCamp
Si JupyterLab offre de nombreuses fonctionnalités utiles pour travailler les données, nous souhaitions apporter des avantages supplémentaires aux praticiens de la donnée en Python et en R lorsqu’ils utilisent DataCamp Workspace. C’est pourquoi nous avons lancé notre propre éditeur de notebooks DataCamp.
Construit au-dessus des Jupyter Notebooks, l’éditeur de notebooks DataCamp permet aux équipes d’écrire du code, d’analyser des données et de partager leurs conclusions facilement. Il prend en charge R, Python et SQL. Voici un aperçu de ses fonctionnalités clés.

L’éditeur de notebooks DataCamp
Collaboration fluide
Les outils existants ne permettent pas toujours à plusieurs data scientists d’éditer le même code simultanément. Un goulot d’étranglement apparaît lorsque l’on fait circuler des fichiers de notebook d’une personne à l’autre. DataCamp Workspace résout ce problème de front. C’est l’équivalent de Google Docs pour les notebooks : plusieurs utilisateurs peuvent travailler sur un même notebook en parallèle.
Le notebook peut être publié et son lien partagé avec vos coéquipiers. Partager un notebook hébergé dans le cloud est plus fiable que d’échanger un fichier hors ligne, qui peut fonctionner sur une machine locale mais pas sur une autre.

Collaboration dans DataCamp Workspace
Prise en charge native de SQL
Une fonctionnalité précieuse de DataCamp Workspace est la prise en charge native de SQL. Vous pouvez établir une connexion sécurisée entre l’éditeur de notebooks DataCamp et une base de données comme PostgreSQL, MySQL ou Redshift. Les données extraites de la base intégrée peuvent ensuite être analysées en R ou en Python.

SQL dans Workspace
Aucune configuration requise
DataCamp Workspace et l’ensemble de ses fonctionnalités ne nécessitent aucune configuration. C’est disponible à la demande, immédiatement, où que vous soyez. Que vous utilisiez JupyterLab ou l’éditeur de notebooks DataCamp, ouvrez Workspace dans un navigateur et votre environnement de notebook est opérationnel en quelques secondes. Comme Workspace fonctionne dans le cloud, vous n’avez rien à télécharger ni installer. À l’inverse, installer correctement JupyterLab côté navigateur est notoirement complexe, surtout pour les débutants.
Commencez avec DataCamp Workspace
Nous espérons que cet aperçu vous a montré comment DataCamp Workspace peut dynamiser vos workflows R. À mesure que nous enrichissons nos fonctionnalités existantes et en développons de nouvelles, dites-nous comment créer le meilleur environnement de notebook possible pour les praticiens de la donnée.
Prêt à vous lancer ? Codez dès maintenant avec DataCamp Workspace.
Filip est le développeur passionné à l'origine de plusieurs des cours Python, SQL et R les plus populaires de DataCamp. Actuellement, Filip dirige le développement de DataLab, le carnet de données de DataCamp basé sur l'IA. Filip est diplômé en génie électrique et en intelligence artificielle.
