Retour à la page d’accueil

Lors de cette séance nous allons apprendre:

  1. Ce que sont R et Rstudio et comment y importer des données

  2. Des bases de codage avec R


R est un logiciel de statistique et un langage de programmation. Afin de faire quoi que ce soit avec R nous devons écrire des instructions avec un code spécifique. Apprendre à utiliser R peut prendre du temps mais nous allons le faire ensemble pas à pas. Cependant, le meilleur moyen d’apprendre est d’utiliser R régulièrement, par exemple pour vos projets de TP ou lors de vos stage.

Nous allons utiliser Rstudio, qui est un logiciel qui permet d’utiliser une interface facile d’utilisation quand nous travaillons avec R.

Voici à quoi ressemble RStudio:

Coder dans R

Concentrons nous sur la partie en bas à gauche qui est la console. C’est l’endroit où les commandes R sont exécutées et où les outputs de la commande sont montrés.

Nous pouvons par exemple utiliser R pour faire des calculs:

# Opérations basiques avec R
3 + 2    # somme
## [1] 5
3 - 2    # soustraction
## [1] 1
3 * 2    # multiplication
## [1] 6
3 / 2    # division
## [1] 1.5
3 ^ 2    # exponentiel
## [1] 9

Notez que les lignes commençant avec le symbole # sont des “Commentaires” que R ignore et ne les exécute pas pas comme du code.

Créer des objets dans R

Dans R, nous pouvons conserver l’output d’une commande dans un objet, et lui donner un nom.

Pour cela, il faut utiliser <- avec le nom de l’objet à gauche et la commande à droite (attention, ne pas inclure d’espace entre < et -)

# Conserver le résultat de l'opération dans un objet appelé "mon_objet" 
mon_objet <- 3 + 2

Attention: Ce que nous appelons ici un objet peut aussi s’appeler une variable. Ces deux termes ne veulent pas dire exactement la même chose mais pour un soucis de simplicité nous avons fait le choix de toujours utiliser le terme objet dans ce cours (même si ce n’est toujours le terme exact)

Nous pouvons ensuite réutiliser ce qui est stocké dans l’objet pour différentes opérations. Par exemple:

mon_objet + 1
## [1] 6
mon_objet + 2
## [1] 7
mon_objet * 2 + 3
## [1] 13

Notez que la valeur de mon_objet n’a pas changé:

mon_objet
## [1] 5

Cependant, il est possible de changer la valeur de mon_objet en y sauvant une nouvelle valeur:

mon_objet <- 6

La valeur précédente de mon_objet est maintenant perdue, et il faudrait réutiliser la commande précédente pour la retrouver.

Quelle est la valeur de mon_objet après la commande suivante?

mon_objet <- mon_objet + 1

Fonctions

Un des atouts de R réside dans ces fonctions, qui permettent d’effectuer des opérations (parfois très compliquées) avec une seule commande.

Pour utiliser des fonctions, nous utilisons toujours la même structure de code: fonction(inputs) Tout d’abord le nom de la fonction, puis des parenthèses (sans espace avec le nom de la fonction) et enfin dans les parenthèses la liste des inputs (arguments) qui donnent les informations nécessaires à la fonction pour effectuer ses opérations.

Vous allez découvrir de nombreuses fonctions tout au long de ce cours, mais tout d’abord voici un exemple avec des fonctions assez simple:

# racine carrée de 3
sqrt(3)
## [1] 1.732051
# Arrondi de 3.14
round(3.14)
## [1] 3

La fonction round() a arrondi le nombre à l’entier le plus proche (pas de chiffre après la virgule). Cependant, nous pourrions vouloir arrondir en gardant un, deux (ou plus) chiffres après la virgule. C’est possible en utilisant l’ argument “digits” de la fonction round():

# Arrondir 3.14 en gardant un chiffre après la virgule
round(3.14, digits = 1)
## [1] 3.1

Les arguments dans les fonction sont séparés par une virgule ,.

Mais comment connaître les arguments d’une fonction et leurs nom? En regardant la documentation de la fonction.

Chaque fonction a une page d’aide que l’on peut appeler en utilisant ? suivi du nom de la fonction. Par exemple ?round.

Sur la page d’aide, nous pouvons voir que la fonction round() accepte deux arguments appelés “x” et “digits”. “x” est le nombre que nous voulons arrondir et “digits” est le nombre de chiffres après la virgules que nous voulons.

A l’aide de ces exemples, comprenez mieux comment utiliser les arguments dans les fonctions:

round(x = 2.72, digits = 1)
## [1] 2.7
round(digits = 1, x = 2.72)
## [1] 2.7
round(2.72, 1)
## [1] 2.7
round(1, 2.72)
## [1] 1

Scripts

Les codes R peuvent être sauvés dans des documents textes, appelés scripts (sauvés avec l’extension .R). Il est mieux d’utiliser des scripts, que d’écrire directement dans la console, car ainsi vous gardez une trace des codes contenant les opérations et analyses des données. Ces codes peuvent être réutilisés, modifiés ou partagés, permettant une analyse reproductible des données.

Pour commencer un nouveau script, cliquez sur le bouton avec un “plus” vert dans le menu en haut à gauche, et sélectionnez “R script”. Un nouveau document va s’ouvrir dans la partie en haut à gauche de Rstudio.

Cette zone dans Rstudio est un éditeur de texte, avec des fonctionnalités telles que l’auto-complétion ou la détection de certaines erreurs de code.

Il est fortement recommandé de sauver les codes de vos analyses dans un script.

Importer des données dans R

Pour importer des données dans R, nous devons tout d’abord savoir comment dire à R où se situe notre document dans nos dossiers.

Pour cela nous devons indiquer le chemin du document dans les dossiers. Comme une adresse du document sur notre ordinateur.

Les chemins sont écrits ainsi:

dossier/sous_dossier/autre_sous_dossier/document.txt

  • Les dossiers sont séparés par /.

  • Le nom du document est à la fin (incluant l’extension).

  • Les espaces doivent être évités.

Mais quel est le début du chemin?

Cela peut varier d’un ordinateur à un autre, mais un bon moyen de savoir est de regarder quel est le dossier de travail que R utilise. C’est le chemin que R utilise comme référence quand vous l’utilisez.

Identifier et comprendre le dossier de travail de R

Tout d’abord, voyons quel est le dossier de travail de R:

getwd()

L’output de cette commande va dépendre du système d’exploitation et du nom de l’utilisateur.

Par exemple, avec un utilisateur appelé sandra, le dossier de travail par défaut est:

/Users/sandra/

Et sur un Windows:

C:/Users/sandra/Documents

Quand vous faites des analyses sur R, il peut être pratique de définir le répertoire de travail de R pour qu’il soit le dossier où vous avez le projet en cours d’analyse.

Si le matériel du cours est sur le bureau de l’ordinateur, les données pour cette séance sont dans le dossier:

Desktop
  |
  |_2021_L3_R
      |
      |_session1_organisation
          |
          |_data
             |
             |_dataset_tidy.csv

Il est donc plus pratique si le répertoire de travail est session1_organisation.

Pour changer le répertoire de travail, nous utilisons la fonction setwd().

# Sur Mac
setwd("/Users/sandra/Desktop/2021_L3_R/session1_organisation/")

# Sur Windows
setwd("C:/Users/sandra/Desktop/2021_L3_R/session1_organisation/")

Changez votre répertoire de travail pour le dossier où est le cours en suivant les exemples ci-dessus. Confirmez que vous êtes dans le bon dossier en utilisant la commande getwd().

Conseils:

  • Quand vous écrivez un chemin de dossiers dans R, utilisez des guillemets "

  • Utilisez la touche Tab quand vous écrivez le chemin du dossier, - RStudio complétera le chemin pour vous

  • Le chemin peut être relatif à votre répertoire de travail actuel. Pour cela :

    • Utilisez le symbole ./ pour indiquer votre répertoire de travail actuel
    • Utilisez le symbole ../ pour indiquer le répertoire avant votre répertoire de travail actuel

Importer des données dans R

Afin de pouvoir importer des données dans R, il faut connaître leur format. S’agit-il de données .txt avec les colonnes séparées par tabulation ou de données .csv avec les colonnes séparées par des virgules ou des point-virgules? Il est important de connaitre la réponse à cette question car nous allons utiliser des fonctions différentes pour lire chaque type de données

Pour importer des données .txt avec les colonnes séparées par tabulation nous allons utiliser la fonction read_tsv().

Cette fonction est incluse dans un package appelé tidyverse. Il faut donc d’abord charger tidyverse dans R en utilisant la fonction library():

library(tidyverse)

Pour importer les données, il existe différentes fonctions qui sont adaptées aux formats du fichier:

  • read_tsv() pour les données .txt avec les colonnes séparées par une tabulation

  • read_csv() pour les données .csv avec les colonnes séparées par une virgule

  • read_csv2() pour les données .csv avec les colonnes séparées par un point virgule


Note: Il existe aussi une fonction read.csv(), qui est la fonction par défaut pour importer des données csv, et qui est très similaire à read_csv(). Pour ce cours, nous allons utiliser les fonctions read_tsv() ou read_csv() du package tidyverse car elles sont plus pratiques.


Exercice:

Créez un script qui:

  • Charge le package tidyverse (en utilisant library())
  • Défini votre répertoire de travail dans le dossier session1_organisations (en utilisant setwd())
  • Importe le fichier dataset_tidy_all.txt qui est dans le dossier data (en utilisant read_tsv())

Conseil: Si besoin consultez la page d’aide des fonctions en utilisant ? (par exemple ?library() pour consulter la page d’aide de la fonction library())


Contrôle continu à faire pour la prochaine séance

A partir de ce que nous avons vu aujourd’hui:

- Installez R et Rstudio sur votre ordinateur (Installer R, Installer Rstudio)

- Commencez le contrôle continu dont les instructions sont ici



Retour à la page d’accueil