Restart 3: Workflow, projets, rapports

Lise Vaudor

01/02/2021

Reproductibilité

illustration Allison Horst

Reproductibilité de la recherche:

faculté à reproduire à l’identique à partir de mêmes observations un résultat scientifique, par ex.:

  • un résultat statistique
  • un graphique
  • un modèle et ses simulations
  • un rapport

La reproductibilité est facilitée par

  • le recours à des traitements en **lignes de commande*"**
  • la documentation du processus
  • l’utilisation d’un seul outil pour l’ensemble du processus

illustration Allison Horst

Répertoire de travail et chemins

Le répertoire de travail correspond au dossier de votre ordinateur où, sauf précision de votre part, R lit et écrit les fichiers.

Si vous ouvrez R ou RStudio directement en double-cliquant sur leur icône, le répertoire de travail correspondra à un dossier défini “par défaut” sur votre poste de travail (par exemple chez moi “/home/lvaudor”).

Vous pouvez

  • modifier le répertoire de travail à la main, au coup par coup (via la commande getwd(): attention ce n’est pas l’approche recommandée!!) ou bien
  • faire en sorte que chacun de vos projets corresponde à son propre répertoire de travail.
illustration Allison Horst

Projets : un projet RStudio <=> un dossier

🔎présentation des projets par RStudio

Idéalement, un projet d’étude devrait correspondre à un projet RStudio, qui devrait correspondre à un dossier sur votre ordinateur…

Exemple d’organisation d’un projet

Pour une question d’organisation, il est souhaitable que ce dossier comprenne l’ensemble des éléments nécessaires à la conduite de votre projet (traitements et rapport confondu)

  • le rapport Rmd (nous en parlerons un peu plus tard)
  • les données à importer
  • les données exportées (résultats intermédiaires ou finaux de vos traitements)
  • les figures
  • les scripts nécessaires à vos traitements
  • etc.

Projets: création

Pour créer un nouveau projet RStudio, il suffit d’aller dans RStudio et cliquer sur File -> New Project

Vous avez alors le choix entre:

  • créer un projet correspondant à un dossier existant sur votre ordinateur
  • créer un projet correspondant à un nouveau dossier (dans ce cas, le dossier est créé sur votre ordinateur)
  • créer un projet à partir d’un projet existant sur un dépôt distant de contrôle de version (version control repository) (par exemple gitHub)

Un fichier d’extension .RProj est alors créé dans le dossier en question.

Pour réouvrir le projet par la suite, il vous suffira:

  • soit de double-cliquer sur ce fichier d’extention .Rproj,
  • soit de l’ouvrir via le menu RStudio File -> Open Project

Projets

Les avantages au travail en projet sont liés à

la gestion des chemins et du répertoire de travail

Par défaut, à l’ouverture d’un projet, le répertoire de travail par défaut est défini comme étant le dossier lié au projet. Cela veut dire que vous pouvez vous contenter de définir les chemins de manière relative à partir de ce dossier et qu’ils resteront valables sur un autre ordi/si vous déplacez le dossier (à partir du moment où la structure interne du dossier reste inchangée bien sûr).

la praticité en terme de “workflow” (notamment si vous travaillez sur plusieurs projets en même temps)

Travailler sur un projet vous permet de retrouver dans l’éditeur RStudio les derniers fichiers que vous avez édité et relatifs à ce projet en particulier, dans un encodage correct, de sauvegarder l’environnement .Rdata si vous le souhaitez, etc.

Rapports

illustration Allison Horst

Rapports: layout

Rapports : Tricoter un .Rmd en .docx, .html, .pdf

Rapports : Tricoter un .Rmd en .docx, .html, .pdf

Rapports: Premier niveau de titre

Rapports: Premier niveau de titre

Rapports: Deuxième niveau de titre

Rapports: Deuxième niveau de titre

Rapports : Chunks de code

Rapports : Chunks de code

Rapports : Chunks de code muets

Rapports : Chunks de code muets

Rapports : Chunks de code incrustés

Rapports : Chunks de code incrustés

Rapports: Chunks graphiques

Rapports: Chunks graphiques

On récapitule!

On a parlé de quoi, déjà?
  • Projets
    • arborescence du dossier,
    • robustesse du chemin relatif,
    • conservation des paramètres du projet (par ex. l’encodage des scripts ou .Rmd)
    • contrôle de version
  • Rapports
    • workflow, reproductibilité
    • formats de sortie
    • tricotage et paramètres des chunks de code