1 RStudio


RStudio est l’Environnement de Développement Intégré très majoritairement employé par les utilisateurs du langage R.

1.1 Les composantes principales de l’interface

Dans son layout par défaut, lorsqu’un script est ouvert, 4 containers permettent de monitorer les différents aspects d’un projet ou d’analyses.

Leur positionnement et leur présence peuvent être paramétrés dans les options avancées.

Dans chaque container, différents onglets permettent d’accéder aux fonctionnalités proposées.


Rédaction de scripts

  • Edition de scripts dans différents onglets, visualisation de leur structure

  • Possibilité d’ouverture de scripts dans différentes fenêtres

  • Compilation de scripts, génération de rapports, options personalisées suivant la nature du document


Console

  • Console R : exécution et affichage de la sortie des commandes

  • Terminal du système (monitorat de l’utilisation mémoire, git en ligne de commande, etc)

  • Mode bebug (breakpoints, navigation dans les appels de fonction)

  • Logs des compilations de Rmarkdown


Environnement

  • Liste des variables de l’environnement : aperçu des dataframes, listes, vecteurs…

  • Sauvegarde de l’environnement de travail

  • Connexion à une base de données

  • Historique des commandes exécutées

  • Interface pour git


Fichiers et apperçus graphiques

  • Navigateur de fichiers, setting du répertoire de travail

  • Affichage des graphiques générés par le code et de leur historique

  • Liste des packages installés et loadés dans la session courante

  • Documentation des packages installés

  • Aperçu de documents html


1.2 Tips et remarques complémentaires sur RStudio et R

  • Beaucoup de paramètres sont accessibles à l’utilisateur dans les options globales de RStudio pour l’édition du code, l’apparence de l’interface, le lien avec le terminal ou git, la compilation de Rmarkdown

  • Des raccourcis claviers existent pour la majorité des actions, la liste étant disposnible avec Alt+Shift+K ou Option+Shift+K. Des raccourcis personnalisés peuvent être créés.

  • Travaillez sous le format “Projet” pour la gestion automatique des répertoires de travail, des environnements, etc

  • RStudio peut être agrémenté d’Addins, des extensions constituant des aides pour des tâches de programmation. Par exemple : un color picker, une interface pour ggplot2, une aide à la citation de références, des code organizers…

  • User et abuser de l’autocomplétion lors de l’écriture de scripts (nom de fonctions, arguments de fonctions, variables…)

  • Obtenez de l’aide sur n’importe quelle fonction dans la console avec ?, par exemple ?ggplot.

  • Plusieurs sessions R indépendantes peuvent être lancées simultanément (travail en parallèle, ou dans différents projets)

  • RStudio s’intègre avec Git et le développement de packages avec des onglets spécifiques dans la composante en haut à droite

  • Une cheat-sheet très complète sur l’interface RStudio

  • La communauté des utilisateurs de R et RStudio est très active et développée : https://community.RStudio.com/ est un forum d’échange et d’aide aux développeurs. Des groupes comme RWeekly, SatRdays, effectuent des conférences régulièrement et communiquent sur les réseaux sociaux, sur les nouveautés liées à R.

2 Rédaction de rapports avec Rmarkdown


2.1 Quelques notions

Lors de cette séance nous allons apprendre à rédiger des rapports d’analyse en Rmarkdown. L’idée n’est plus de produire de simples scripts (des documents en .R comme vous en avez déjà probablement codés), mais des documents partageables et lisibles par tout le monde, y compris les personnes ne sachant pas programmer en R. Ces documents contiendront des explications, du contexte, vos lignes de code R, et leurs sorties (les graphiques générés par exemple).

Plus précisément, Rmarkdown est une syntaxe permettant la rédaction de documents HTML, PDF, MS World, ou d’autres formats. Il est possible d’y inclure du code R comme dans un script classique, mais également ses sorties, et en les encapsulant dans un rapport en structuré et fourni en descriptions, interprétations textuelles, liens, images…