B Introduction à R et RStudio
Tout au long du livre, nous incluons du code R pour l’estimation, la simulation et la création d’exemples. Nous avons utilisé RStudio pour créer les slides. Pour les personnaliser à vos propres fins, nous supposons que vous utiliserez R Markdown. Ci-dessous, voici les guides pour configurer R et RStudio sur votre ordinateur, ainsi que quelques commandes de base fréquemment utilisées.
B.1 R et RStudio
R est un environnement logiciel libre utilisé couramment pour l’analyse statistique et le calcul. Étant donné que les participants aux journées d’apprentissage arrivent avec un bagage statistique et des outils différents, nous utilisons R pour nous assurer que tout le monde se comprend. Nous recommendons l’utilisation de R de manière générale pour sa flexibilité, sa richesse et son support complet, principalement via des forums en ligne.
RStudio est un environnement de développement intégré gratuit et open source avec une interface utilisateur qui rend R beaucoup plus convivial. R Markdown est une fonctionnalité de RStudio qui permet de présenter facilement du code, des résultats et du texte au format .pdf, .html ou .doc.
B.2 Télécharger R et RStudio
B.2.1 Télécharger R
R est téléchargeable gratuitement sur CRAN. Cliquer sur le lien correspondant à votre système d’exploitation :
- Pour Windows : https://cran.r-project.org/bin/windows/base/
- Pour Mac OS X : https://cran.r-project.org/bin/macosx/.
- Sélectionner
R-4.0.4.pkg
pour OS X 10.13 et plus. - Sélectionner
R-3.6.3.nnpkg
pour OS X 10.11-10.12. - Sélectionner
R-3.3.3.nnpkg
pour OS X 10.19-10.10. - Sélectionner
R-3.2.1-snowleopard.pkg
pour OS X 10.6-10.8.
- Sélectionner
B.2.2 Télécharger RStudio
RStudio peut être téléchargé gratuitement sur le site Web de RStudio, https://www.rstudio.com/products/rstudio/download/. Dans le tableau, cliquez sur le bouton bleu “Download” en haut de la colonne de gauche, “Licence Open Source RStudio Desktop”, comme illustré ci-dessous dans la figure B.1. Après avoir cliqué, vous verrez une liste d’options de téléchargement, comme illustré à la Figure B.2.
- Pour Windows, sélectionner
Windows 10/8/7
. - Pour Mac OS X, sélectionner
Mac OS X 10.13+
.
B.3 L’interface RStudio
Lorsque vous ouvrez RStudio pour la première fois, trois fenêtres doivent être visibles, comme illustré dans la Figure B.3 ci-dessous.
- Console (à gauche)
- Accounting (en haut à droite) : cela inclue les onglets Environment et History
- Miscellaneous (en bas à droite)
B.3.1 La console
Vous pouvez exécuter toutes les opérations dans la console. Par exemple, si vous saisissez 4 + 4
et appuyez sur la touche Enter, la console renvoie [1] 8
.
Pour s’assurer que tout le monde est prêt à utiliser R lors des journées d’apprentissage, nous demandons aux participants d’exécuter une ligne de code dans la console pour télécharger plusieurs packages R. Les packages sont des fragments de code reproducibles qui permettent une analyse plus efficace dans R. Pour exécuter ce bout de code, copiez-le dans la console et appuyez sur votre touche Enter
. Vous devez être connecté à internet pour télécharger des packages.
install.packages(c("ggplot2", "dplyr", "AER", "arm", "MASS", "sandwich",
"lmtest", "estimatr","coin","randomizr", "DeclareDesign"))
Si le téléchargement est réussi, votre console ressemblera à la figure B.4, sauf que les URL seront différentes en fonction de votre emplacement.
B.3.2 L’éditeur
Afin d’écrire et sauvegarder du code reproductible, nous allons ouvrir une quatrième fenêtre, l’éditeur, en cliquant sur l’icône avec une page blanche et un signe plus, dans le coin supérieur gauche de l’interface RStudio et en sélectionnant R Script
, comme illustré à la figure B.5.
Une fois le script R ouvert, il devrait y avoir quatre fenêtres dans l’interface RStudio, maintenant avec l’ajout de la fenêtre Éditeur. Nous pouvons exécuter une arithmétique simple en entrant une formule dans l’éditeur et en appuyant sur Ctrl + Entrée
(Windows) ou Commande + Entrée
(Mac). La formule et la “réponse” apparaîtront dans la console, comme illustré à la Figure B.6.
R peut être utilisé pour toute opération arithmétique, y compris, mais sans s’y limiter, l’addition (+
), la soustraction (-
), la multiplication scalaire (*
), la division (/
) et l’exponentielle (^
).
B.3.3 Accounting
Au-delà des fonctions de base, nous pouvons également stocker des valeurs, des données et des fonctions dans l’environnement global. Pour affecter une valeur à une variable, utilisez l’opérateur <-
. Toutes les valeurs, fonctions et données stockées apparaîtront dans l’onglet Environment de la fenêtre Accounting. Dans la Figure B.7, nous affectons la valeur \(3 \times \frac{6}{14}\) à la variable t
, et pouvons voir qu’elle est stockée sous Values.
Nous chargeons également un jeu de données. Ici, “ChickWeight” est un dataset intégré à R ; la plupart des datasets seront chargés à partir du Web ou d’autres fichiers sur votre ordinateur via une autre méthode. Nous pouvons voir que ChickWeight contient 578 observations de 4 variables et est stocké dans l’onglet Environment. En cliquant sur le nom ChickWeight, un onglet s’ouvrira avec le dataset dans la fenêtre de votre éditeur.
Les ateliers des journées d’apprentissage utilisent de nombreux outils dans R pour analyser et visualiser les données. Pour l’instant, nous pouvons apprendre quelques outils de base pour examiner les données. La fonction head()
nous permet de voir les six premières lignes des données. summary()
résume chacune des colonnes du dataset et dim()
fournit les dimensions du dataset avec d’abord le nombre de lignes puis de colonnes.
weight Time Chick Diet
1 42 0 1 1
2 51 2 1 1
3 59 4 1 1
4 64 6 1 1
5 76 8 1 1
6 93 10 1 1
weight Time Chick Diet
Min. : 35 Min. : 0.0 13 : 12 1:220
1st Qu.: 63 1st Qu.: 4.0 9 : 12 2:120
Median :103 Median :10.0 20 : 12 3:120
Mean :122 Mean :10.7 10 : 12 4:118
3rd Qu.:164 3rd Qu.:16.0 17 : 12
Max. :373 Max. :21.0 19 : 12
(Other):506
[1] 578 4
Contrairement à d’autres logiciels statistiques, R permet aux utilisateurs de stocker simultanément plusieurs ensembles de données, éventuellement de dimensions différentes. Cette fonctionnalité rend R assez flexible pour l’analyse à l’aide de plusieurs méthodes.
B.3.4 Divers
R fournit une suite d’outils, allant des fonctions intégrées aux packages pour tracer graphiques, modèles, estimations, etc. La dernière fenêtre Divers permet une visualisation rapide des graphiques dans RStudio. La Figure B.8 montre une courbe dans cette fenêtre. Pendant les Leaning Days, on discutera de la manière de représenter les données.
B.4 Apprendre à utiliser R
B.4.1 Ressources en ligne
Il existe de nombreuses ressources en ligne utiles pour vous aider à commencer avec R. Nous vous recommandons deux sources :
- Code School, qui fonctionne entièrement sur votre navigateur https://www.codeschool.com/courses/try-r.
- Coursera, via un cours de programmation R en ligne organisé par l’Université Johns Hopkins :
- Allez sur https://www.coursera.org
- Créez un compte (c’est gratuit !)
- Inscrivez-vous pour “R Programming at Johns Hopkins University” (instructeur : Roger Peng) sous la rubrique “Cours”
- Lisez les documents et regardez les vidéos de la première semaine. Les vidéos de la première semaine durent environ 2 heures 30 au total.
B.4.2 Exercise de base
Voici quelques fragments de code pour vous familiariser avec certaines pratiques de base de R. Nous vous recommandons de vous entraîner en tapant les fragments de code dans votre éditeur, puis en les évaluant.
B.4.2.1 Configuration d’une session R
En général, nous lisons d’autres fichiers tels que des données ou des fonctions dans R et publions des résultats tels que des graphiques ou des tableaux dans des fichiers en dehors de la session R. Pour ce faire, nous devons donner à R une “adresse” où il peut localiser de tels fichiers. Il peut être plus efficace de le faire en définissant un répertoire de travail, i.e. un chemin d’accès au répertoire dans lequel les fichiers pertinents sont stockés. Nous pouvons identifier le répertoire de travail actuel en utilisant getwd()
et le définir en utilisant setwd()
. Notez que la syntaxe de ces chemins de fichiers varie selon le système d’exploitation.
Vous devrez peut-être installer des packages autres que ceux répertoriés ci-dessus pour exécuter certaines fonctions. Pour installer les packages, nous utilisons install.packages("")
, en remplissant le nom du package entre les marques "", comme suit. Vous n’avez besoin d’installer les packages qu’une seule fois.
Une fois qu’un package est installé, il peut être chargé et accessible en utilisant library()
où le nom du package est inséré entre parenthèses (sans guillemets).
Pour effacer de la mémoire de R, les données, fonctions ou valeurs stockées qui apparaissent dans l’onglet de comptabilité, utilisez rm(list = ls())
. Il peut être utile de définir un nombre aléatoire pour garantir que la réplication est possible dans une session R différente, en particulier lorsque nous travaillons avec des méthodes basées sur la simulation.
B.4.2.2 Les basiques
Nous allons maintenant explorer quelques commandes de base. Afin d’affecter un scalaire (i.e. un élément unique) à une variable, nous utilisons la commande <-
comme discuté précédemment :
[1] 5
Nous pouvons également vouloir affecter un vecteur d’éléments à une variable. Ici, nous utilisons la même commande <-
, mais nous nous concentrons sur la façon de créer le vecteur.
[1] 1 2 3 4 5 6 7 8 9 10
[1] 1.000 3.000 2.000 4.000 3.142
On peut alors se référer aux éléments d’un vecteur en désignant leur position à l’intérieur de parenthèses []
.
[1] 1
[1] 5 4
[1] 2 3 4 5 6 7 8 9 10
# Retourne tous les nombres indiqués comme "TRUE"
b[c(TRUE, FALSE, TRUE, FALSE, FALSE, TRUE, TRUE, FALSE, FALSE, FALSE)]
[1] 1 3 6 7
Il existe un ensemble de fonctions pré-existantes qui peuvent être appliquées à des vecteurs comme b
.
[1] 50
[1] 5
[1] 10
[1] 0
[1] 3.496
[1] 12.22
On peut aussi appliquer des transformations arithmétiques à tous les éléments d’un vecteur :
[1] 1 4 9 16 0 36 49 64 81 100
[1] 1.000 1.414 1.732 2.000 0.000 2.449 2.646 2.828 3.000 3.162
[1] 0.0000 0.6931 1.0986 1.3863 -Inf 1.7918 1.9459 2.0794 2.1972 2.3026
[1] 2.718 7.389 20.086 54.598 1.000 403.429 1096.633 2980.958 8103.084 22026.466
Enfin, nous pouvons évaluer les affirmations logiques (c’est-à-dire “la condition X est-elle vraie ?”) sur tous les éléments d’un vecteur :
[1] FALSE TRUE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
[1] TRUE TRUE TRUE TRUE TRUE FALSE FALSE FALSE FALSE FALSE
[1] FALSE FALSE FALSE FALSE FALSE TRUE TRUE TRUE TRUE TRUE
[1] TRUE TRUE TRUE TRUE TRUE FALSE FALSE TRUE FALSE FALSE
[1] FALSE FALSE TRUE TRUE FALSE TRUE TRUE TRUE FALSE FALSE
[1] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE
[1] 1 2 3 4 5
La logique de base de ces commandes s’applique à des structures de données beaucoup plus complexes que les scalaires et les vecteurs. La compréhension de ces fonctionnalités de base vous aidera à mieux comprendre les sujets abordés au cours des journées d’apprentissage.