Chapitre 2 Introduction à R Studio et R Markdown

2.1 Pourquoi utiliser R Markdown

Plusieurs préfèrent rédiger leurs scripts dans des fichiers de type R Markdown plutôt que R Script pour diverses raions. Je recommande personnellement d’utiliser R Markdown pour les raisons suivantes :

  • Ce type de fichier permet de facilement annoter son script entre les sections de codes qui sont comprises dans un bloc (“chunk” en anglais).

    • Un script bien annoter permet non seulement au scripteur de s’y retrouver facilement mais aussi de partager son code à ses collègues ou même publiquement.

    • En effet, il est de plus en plus commun de retrouver dans les articles scientifiques un lien vers les scripts générés et uilisés par les auteurs de l’article afin d’analyser leurs données.

  • Mais aussi, les blocs de codes permettent d’exécuter seulement certaines sections de code à la fois, ce qui ultimement permet de mofidier puis exécuter seulement ces sections de code sans avoir à re-exécuter l’entièreté du script.

2.2 Utliser R Markdowm

La première étape consiste donc à créer un nouveau document de type R Mardown. Pour cela, ouvrez RStudio, puis cliquez sur Fichier. Dans le menu déroulant sélectionner Nouveau Fichier puis R Markdown....

Dans la nouvelle fenêtre vous pouvez donner le titre que vous voulez à votre nouveau document. Par défault le nouveau document affiche une petite introduction ainsi que des exemples tel que sur l’image ci-dessous :

Ces informations ne sont pas pertinentes et vous pouvez supprimer l’ensemble du texte sous l’entête (l’entête correspond à la section délimitée par les trois tirets ---).

2.2.1 Bloc de codes

Dans R markdown, les lignes de codes à exécuter doivent être comprises dans un bloc de code. Le texte non compris dans un bloc n’est donc pas considéré comme du code, ce qui permet d’annoter minutieusement votre script entre les blocs afin de vous y retrouver facilement.

Un bloc de code R doit toujours débuter avec les caractères suivants : ```{r} et se terminer avec les caractères suivant : ```. Un bloc de code ressemble donc à ceci :

```{r}

``` 

Un bloc de code peut être inséré avec l’une des façons suivantes :

  • le raccourcit clavier : Ctrl + Alt + I
  • tapper manuellement les caractères délimitants (```{r} ``` )
  • l’onglet Code puis Insert chunk
  • le bouton vert avec le petit c et signe de plus en haut à droite.

Un fois votre code rédigé dans le bloc, vous pouvez exécuter l’entièreté du code contenu dans ce block en appuyant sur le bouton vert en haut à droite du code ().

Il est possible d’insérer des blocs de code de différents languages de programmation tels que Bash et Python, il suffit de remplacer le r entre les accolades par le nom du programme utilisé.

Plusieurs autres options peuvent être appliqués sur les blocs, pour plus d’informations je vous recommande de consulter la documentation disponible sur internet.

2.2.2 Définir le répertoire de travail par défault

Généralement, avant de commencer à analyser des données, il faut indiquer à R où se trouve les données sur notre ordinateur. Il existe plusieurs manières de procéder, dont notamment, spécifier au début du script un répertoire/dossier de travail par défault. Pour ce faire, une suffit d’utiliser la commande setwd() comme présenté sur l’exemple ci-dessous. Le texte entre les guillemets de l’exemple doit simplement être modifié pour le vrai chemin vers votre répertoire/dossier de travail. Une fois le repertoire de travail définit par défaut de la sorte il n’est pas nécessaire d’inclure le chemin vers les fichiers que l’on veut importer tant qu’il se trouve dans le répertoire spécifié. Cela s’applique aussi à la sauvegarde de tableaux, figures ou autres.

```{r} 
setwd("/chemin/vers/le/répertoire/")
```

2.2.3 Importer des données

Pour importer un fichier en format comma seperated value (csv) dans R on utilise la commande read.csv avec les arguments suivants :

  • file : Spécifier le nom du fichier
  • header : Indiquer si la première ligne de notre tableau correspond au nom des colonnes (valeurs possible TRUE/FALSE)
  • row.names : Indiquer quelle colone de notre tableau correspond au nom des rangés
  • sep : Indiquer quel caractère doit servir de séparateur pour les colonnes
  • check.name : Ne pas systématiquement remplacer le trait d’union par un point (valeurs possible TRUE/FALSE)
 ```{r}
df = read.csv(file = "nom_fichier.csv", header = TRUE, row.names = 1, sep = ",", check.names = FALSE)  
```

Pour un tableau en format tab delimited on peut utiliser la fonction read.table et spécifier \t comme séparateur.