README.md 5.89 KB
Newer Older
NAVRATIL VINCENT's avatar
NAVRATIL VINCENT committed
1
# Initiation à R à travers RStudio
2

NAVRATIL VINCENT's avatar
NAVRATIL VINCENT committed
3 4 5
<a href="https://rstudio.com"><img src="https://d33wubrfki0l68.cloudfront.net/62bcc8535a06077094ca3c29c383e37ad7334311/a263f/assets/img/logo.svg" width=200px></a>

## Prérequis
NAVRATIL VINCENT's avatar
NAVRATIL VINCENT committed
6
- pas de connaissance de base sur les lignes de commandes
NAVRATIL VINCENT's avatar
NAVRATIL VINCENT committed
7

NAVRATIL VINCENT's avatar
NAVRATIL VINCENT committed
8
# Séance 1 - Prise en main de l'IDE RStudio (1h)
NAVRATIL VINCENT's avatar
NAVRATIL VINCENT committed
9

NAVRATIL VINCENT's avatar
NAVRATIL VINCENT committed
10
## Objectif de l'atelier
NAVRATIL VINCENT's avatar
NAVRATIL VINCENT committed
11
- installer la version desktop de RStudio
NAVRATIL VINCENT's avatar
NAVRATIL VINCENT committed
12
- utiliser les principales fonctionnalités des panneaux de RStudio (édition, console, navigateurs)
NAVRATIL VINCENT's avatar
NAVRATIL VINCENT committed
13
- créer un projet RStudio
NAVRATIL VINCENT's avatar
NAVRATIL VINCENT committed
14
- savoir où et comment sauveguarder les historiques, les objets R
NAVRATIL VINCENT's avatar
NAVRATIL VINCENT committed
15 16 17 18 19 20

## Support de l'atelier

![Getting started with RStudio](https://learning.oreilly.com/library/cover/9781449314798/250w/)

## Qu'est ce que R ?
NAVRATIL VINCENT's avatar
NAVRATIL VINCENT committed
21

22 23 24 25 26 27
- un environnement logiciel open-source pour les calculs scientifiques et les graphiques.
- disponibles pour Windows, Mac OS X et plusieurs plateformes UNIX (incluant Linux) sous forme de binaires (compilés)
- Robert Gentleman and Ross Ihaka et la R’s core development team
- un langage de programmation (de script) interprété + add-on package
- the Comprehensive R Archive Network (CRAN) http://cran.r-project.org

NAVRATIL VINCENT's avatar
NAVRATIL VINCENT committed
28
## Pourquoi utiliser l'IDE RStudio ?
NAVRATIL VINCENT's avatar
NAVRATIL VINCENT committed
29

NAVRATIL VINCENT's avatar
NAVRATIL VINCENT committed
30
- IDE (Integrated Development Environnment)
NAVRATIL VINCENT's avatar
NAVRATIL VINCENT committed
31
- facilite l'écriture le développement de programme et de fonctions dans un environnement intégré
NAVRATIL VINCENT's avatar
NAVRATIL VINCENT committed
32
- projet open-source, multi-plateformes (Windows, Mac Os X, UNIX)
NAVRATIL VINCENT's avatar
NAVRATIL VINCENT committed
33 34
- mode standalone (Desktop Rstudio) ou serveur (à travers un naviguateur web, RStudio server)
- organisé sous forme de 4 panneaux (éditeur de code source, console+terminal, navigateur d'objets/historiques, navigateurs de fichiers/graphiques/packages/aide)
NAVRATIL VINCENT's avatar
NAVRATIL VINCENT committed
35
- plus convivial que la console R pour débuter, plus facile à apprendre que Emacs, plus facile à installer que Eclipse ...
NAVRATIL VINCENT's avatar
NAVRATIL VINCENT committed
36 37
- développement actif

NAVRATIL VINCENT's avatar
NAVRATIL VINCENT committed
38
## Installation de la version Desktop de RStudio
NAVRATIL VINCENT's avatar
NAVRATIL VINCENT committed
39

NAVRATIL VINCENT's avatar
NAVRATIL VINCENT committed
40
RStudio nécessite l'installation d'une version récente de R (http://cran.r-project.org).
NAVRATIL VINCENT's avatar
NAVRATIL VINCENT committed
41

NAVRATIL VINCENT's avatar
NAVRATIL VINCENT committed
42 43 44 45 46 47 48 49 50 51 52 53 54 55
Vérifier si une version n'est pas déjà installée sur votre OS.
```bash
R
```

Puis installer RStudio depuis rstudio.com (https://rstudio.com/products/rstudio/download/#download).

> ### Astuce
> Utiliser la variable d'environnement `RSTUDIO_WHICH_R` afin de  pointer sur une version de R donnée.
```bash
export RSTUDIO_WHICH_R=/usr/local/bin/R
```

## Premiers pas avec RStudio
NAVRATIL VINCENT's avatar
NAVRATIL VINCENT committed
56

NAVRATIL VINCENT's avatar
NAVRATIL VINCENT committed
57 58
Une fois installée lancer RStudio.

NAVRATIL VINCENT's avatar
NAVRATIL VINCENT committed
59 60
### Notion d'Espace de travail (Workspace)
Au lancement de RStudio, R est lancé: 
NAVRATIL VINCENT's avatar
NAVRATIL VINCENT committed
61

NAVRATIL VINCENT's avatar
NAVRATIL VINCENT committed
62 63 64
> - Le programme R est lancé dans le répertoire courant (**working directory** - wd)
> - Si présentes, les commandes dans le fichier **.Rprofile** sont executées
> - Si présentes les données dans le fichier **.Rdata** sont chargées
NAVRATIL VINCENT's avatar
NAVRATIL VINCENT committed
65
> - En quitant (à l'aide de la commande `quit()`), l'utilisateur peut sauvegarder son espace de travail en répondant "yes" à la question "Save workspace image ?" (les données stockées dans les **objets R** seront écrites dans le **.RData**, les commandes dans le fichier **.Rhistory**)
NAVRATIL VINCENT's avatar
NAVRATIL VINCENT committed
66
> - Il y a la possibilité d'utiliser la commande `save.image()` ou `save()` en cours de session pour sauveguarder respectivement tout ou une partie des objets de la session dans un fichier au foramt **.RData**. Il y a la possibilité de recharger ce fichier à l'aide de la fonction `load()`
NAVRATIL VINCENT's avatar
NAVRATIL VINCENT committed
67

NAVRATIL VINCENT's avatar
NAVRATIL VINCENT committed
68
### Création de Projets sous RStudio
NAVRATIL VINCENT's avatar
NAVRATIL VINCENT committed
69

NAVRATIL VINCENT's avatar
NAVRATIL VINCENT committed
70 71
RStudio peut créer un nouveau projet (**"New  Directory"**) ou importer un projet existant depuis un répertoire/dossier (**"Existing Directory"**) ou depuis un gestionnaire de version (**"Version Control"**) (git, svn).
Les nouveaux projets sont de plusieurs types (Analyse : **"New Project"**, Développement de packages: **"R Package"** ou d'application Shiny **"Shiny Web Application"**)
NAVRATIL VINCENT's avatar
NAVRATIL VINCENT committed
72

NAVRATIL VINCENT's avatar
NAVRATIL VINCENT committed
73
- Possibilité de créer un dépôt **git** associé ("Create a git repository")
NAVRATIL VINCENT's avatar
NAVRATIL VINCENT committed
74
- Possibilité d'utiliser un gestionnaire de package **Packrat** ("Use packrat with this project") http://rstudio.github.io/packrat/rstudio.html
NAVRATIL VINCENT's avatar
NAVRATIL VINCENT committed
75

NAVRATIL VINCENT's avatar
NAVRATIL VINCENT committed
76 77
### Préférences de RStudio

NAVRATIL VINCENT's avatar
NAVRATIL VINCENT committed
78
En cliquant sur l'onglet RStudio>preferences nous avons accès aux options paramétrables de RStudio.
NAVRATIL VINCENT's avatar
NAVRATIL VINCENT committed
79

NAVRATIL VINCENT's avatar
NAVRATIL VINCENT committed
80
## Quelques cours en ligne utiles 
NAVRATIL VINCENT's avatar
NAVRATIL VINCENT committed
81

NAVRATIL VINCENT's avatar
NAVRATIL VINCENT committed
82
https://openclassrooms.com/fr/courses/4525256-initiez-vous-au-langage-r-pour-analyser-vos-donnees/
NAVRATIL VINCENT's avatar
NAVRATIL VINCENT committed
83

NAVRATIL VINCENT's avatar
NAVRATIL VINCENT committed
84 85
http://swcarpentry.github.io/r-novice-gapminder/01-rstudio-intro/index.html

NAVRATIL VINCENT's avatar
NAVRATIL VINCENT committed
86 87
https://r.developpez.com/tutoriels/introduction-r-et-rstudio/

NAVRATIL VINCENT's avatar
NAVRATIL VINCENT committed
88
# Séance 1-bis - Utiliser RStudio server sur le cloud (1h)
NAVRATIL VINCENT's avatar
NAVRATIL VINCENT committed
89

NAVRATIL VINCENT's avatar
NAVRATIL VINCENT committed
90 91 92 93
# Séance 2 - Initiation à R sous RStudio (1h)

Le **package base** de R est constitué d'un ensemble de fonctions et de données installés par défaut.

NAVRATIL VINCENT's avatar
NAVRATIL VINCENT committed
94
Nous allons utiliser le jeux de données `iris` pour illustrer les différentes fonctionalités de base de R.
NAVRATIL VINCENT's avatar
NAVRATIL VINCENT committed
95 96
https://fr.wikipedia.org/wiki/Iris_de_Fisher

NAVRATIL VINCENT's avatar
NAVRATIL VINCENT committed
97 98 99 100 101 102 103
<img src="https://upload.wikimedia.org/wikipedia/commons/thumb/5/56/Kosaciec_szczecinkowaty_Iris_setosa.jpg/440px-Kosaciec_szczecinkowaty_Iris_setosa.jpg" width="100px"> <i>Iris setosa</i><br>
<img src="https://upload.wikimedia.org/wikipedia/commons/thumb/4/41/Iris_versicolor_3.jpg/440px-Iris_versicolor_3.jpg" width="100px"> <i>Iris versicolor</i><br>
<img src="https://upload.wikimedia.org/wikipedia/commons/thumb/9/9f/Iris_virginica.jpg/440px-Iris_virginica.jpg" width="100px"> <i>Iris virginica</i><br>

Nous allons pour se faire utiliser la fonction `data()`. 
> les fonctions en R sont toujours écrites de la manière suivante: nom_de_ma_fonction(liste de paramètres).

NAVRATIL VINCENT's avatar
NAVRATIL VINCENT committed
104 105 106 107 108 109 110 111
Pour avoir plus d'information faire précéder le nom de la fonction à l'aide de la commande `?`

```R
?data
#liste tous le datasets présents dans le package de base
data()
#charge le dataset "iris"
data(iris)
NAVRATIL VINCENT's avatar
NAVRATIL VINCENT committed
112 113 114
class(iris)
names(iris)
class(iris$Sepal.Length)
NAVRATIL VINCENT's avatar
NAVRATIL VINCENT committed
115
````
NAVRATIL VINCENT's avatar
NAVRATIL VINCENT committed
116 117


NAVRATIL VINCENT's avatar
NAVRATIL VINCENT committed
118 119 120
## Références de la formation
https://pbil.univ-lyon1.fr/R/pdf/bs01.pdf
https://rpubs.com/moeransm/intro-iris
NAVRATIL VINCENT's avatar
NAVRATIL VINCENT committed
121

NAVRATIL VINCENT's avatar
NAVRATIL VINCENT committed
122 123 124
## Apprendre R avec swirl

```R
NAVRATIL VINCENT's avatar
NAVRATIL VINCENT committed
125 126 127
> install.packages("swirl")
> library(swirl)
> swirl()
NAVRATIL VINCENT's avatar
NAVRATIL VINCENT committed
128 129
```

NAVRATIL VINCENT's avatar
NAVRATIL VINCENT committed
130 131
## Pour aller plus loin 
R For Data Science: https://r4ds.had.co.nz/index.html
NAVRATIL VINCENT's avatar
NAVRATIL VINCENT committed
132 133 134 135 136

## Prochains thèmes
Initiation à Bioconductor
Initiation à tidyverse
...