Initiation à R via RStudio
Université Assane SECK de Ziguinchor
UFR des Sciences et Techniques
Département Informatique
Licence 2 : Ingénierie Informatique
(Dr. NDONGO) Logiciel R via Rstudio 13 mai 2022 1 / 44
Sommaire
1 Introduction
L’interface RStudio
Le répertoire de travail
Les packages
2 Premiers programmes R
calculs élémentaires
scalaires, vecteurs et matrices
Les fonctions
3 L’aide et la documentation
4 Importation et exportation de données
Importation
Exportation
5 Les graphiques
6 Les statistiques
(Dr. NDONGO) Logiciel R via Rstudio 13 mai 2022 2 / 44
Introduction
Sommaire
1 Introduction
L’interface RStudio
Le répertoire de travail
Les packages
2 Premiers programmes R
calculs élémentaires
scalaires, vecteurs et matrices
Les fonctions
3 L’aide et la documentation
4 Importation et exportation de données
Importation
Exportation
5 Les graphiques
6 Les statistiques
(Dr. NDONGO) Logiciel R via Rstudio 13 mai 2022 3 / 44
Introduction
Le logiciel R (disponible sur http ://www.r-project.org/) est un logiciel
libre qui permet de réaliser des analyses statistiques, et ayant un
certain nombre d’atouts :
il permet l’utilisation des méthodes statistiques classiques à l’aide
de fonctions prédéfinies,
il permet de créer ses propres programmes dans un langage de
programmation assez simple d’utilisation.
il permet d’utiliser des techniques statistiques innovantes et
récentes à l’aide de package développés par les chercheurs et
mis à disposition sur le site du Comprehensive R Archive Network
(CRAN) ( http ://cran.r-project.org/).
Il existe des versions : Windows 95 et plus, Linux, MacOS
Le logiciel R fonctionne initialement en ligne de commande, mais des
interfaces permettent désormais une utilisation plus conviviale.
(Dr. NDONGO) Logiciel R via Rstudio 13 mai 2022 4 / 44
Introduction L’interface RStudio
Sommaire
1 Introduction
L’interface RStudio
Le répertoire de travail
Les packages
2 Premiers programmes R
calculs élémentaires
scalaires, vecteurs et matrices
Les fonctions
3 L’aide et la documentation
4 Importation et exportation de données
Importation
Exportation
5 Les graphiques
6 Les statistiques
(Dr. NDONGO) Logiciel R via Rstudio 13 mai 2022 5 / 44
Introduction L’interface RStudio
Nous proposons ici de travailler avec l’interface RStudio,
téléchargeable sur le site http ://www.rstudio.com/
(Dr. NDONGO) Logiciel R via Rstudio 13 mai 2022 6 / 44
Introduction L’interface RStudio
L’interface est composée de 4 fenêtres :
Z Fenêtre d’édition (en haut à gauche) : dans cette fenêtre
apparaissent les fichiers contenant les scripts R que l’utilisateur est en
train de développer. En entête de cette fenêtre, des icônes permettent
de sauvegarder le fichier, d’exécuter un morceau de code sélectionné
(icône run) ou l’intégralité du code contenu dans le fichier (icône
source).
Z Fenêtre de commande (en bas à gauche) : cette fenêtre contient
une console dans laquelle les codes R sont saisis pour être exécutés.
Z Fenêtre espace de travail / historique (en haut à droite) : contient
les objets en mémoire, que l’on peut consulter en cliquant sur leur
noms, ainsi que l’historique des commandes exécutées,
Z Fenêtre explorateur / graphique / package / aide (en bas à droite)
(Dr. NDONGO) Logiciel R via Rstudio 13 mai 2022 7 / 44
Introduction Le répertoire de travail
Sommaire
1 Introduction
L’interface RStudio
Le répertoire de travail
Les packages
2 Premiers programmes R
calculs élémentaires
scalaires, vecteurs et matrices
Les fonctions
3 L’aide et la documentation
4 Importation et exportation de données
Importation
Exportation
5 Les graphiques
6 Les statistiques
(Dr. NDONGO) Logiciel R via Rstudio 13 mai 2022 8 / 44
Introduction Le répertoire de travail
Z Le répertoire de travail est celui à partir duquel vous avez lancer
l’interface RStudio. Pour connaître ce répertoire on utilise la
commande getwd().
Z Il sera pratique de se placer dans un répertoire de travail bien
défini. Pour ce faire, vous pouvez soit utiliser la commande setwd pour
vous déplacer dans l’arborescence des répertoires, soit utiliser le
menu de l’interface :
• Session
• Set Working Directory
• Choose Directory
Par la suite, lorsque vous serez amené à charger des jeux de
données, si ceux-ci sont placés dans le répertoire courant dans lequel
vous vous êtes placé, vous n’aurez pas à saisir le chemin complet de
ce répertoire.
(Dr. NDONGO) Logiciel R via Rstudio 13 mai 2022 9 / 44
Introduction Les packages
Sommaire
1 Introduction
L’interface RStudio
Le répertoire de travail
Les packages
2 Premiers programmes R
calculs élémentaires
scalaires, vecteurs et matrices
Les fonctions
3 L’aide et la documentation
4 Importation et exportation de données
Importation
Exportation
5 Les graphiques
6 Les statistiques
(Dr. NDONGO) Logiciel R via Rstudio 13 mai 2022 10 / 44
Introduction Les packages
Z Toutes les fonctions de R sont stockées dans une grande
bibliothèque. Cette bibliothèque contient des packages (ou librairies)
de fonctions. Toutes les librairies ne sont pas chargées au lancement
du logiciel. On peut charger un package à l’aide de la commande :
R > library("nom librairie")
Z Il est possible d’installer des packages supplémentaires. Pour cela,
lorsque vous disposez d’une connexion internet, il suffit d’utiliser la
commande suivante en indiquant le nom du package que l’on veut
installer :
R > install.packages("nom librairie")
RStudio vous proposera alors de choisir le serveur à utiliser pour
télécharger le package et procédera ensuite à l’installation. Il faudra
ensuite charger le package à l’aide de la commande library().
(Dr. NDONGO) Logiciel R via Rstudio 13 mai 2022 11 / 44
Premiers programmes R
Sommaire
1 Introduction
L’interface RStudio
Le répertoire de travail
Les packages
2 Premiers programmes R
calculs élémentaires
scalaires, vecteurs et matrices
Les fonctions
3 L’aide et la documentation
4 Importation et exportation de données
Importation
Exportation
5 Les graphiques
6 Les statistiques
(Dr. NDONGO) Logiciel R via Rstudio 13 mai 2022 12 / 44
Premiers programmes R calculs élémentaires
Sommaire
1 Introduction
L’interface RStudio
Le répertoire de travail
Les packages
2 Premiers programmes R
calculs élémentaires
scalaires, vecteurs et matrices
Les fonctions
3 L’aide et la documentation
4 Importation et exportation de données
Importation
Exportation
5 Les graphiques
6 Les statistiques
(Dr. NDONGO) Logiciel R via Rstudio 13 mai 2022 13 / 44
Premiers programmes R calculs élémentaires
Z R peut être utilisé pour réaliser des opérations élémentaires :
R > ((1 + sqrt(5))/2)2
Z dont le résultat peut être stocké dans une variable
R > a = ((1 + sqrt(5))/2)2
gardée en mémoire (a apparaît alors dans la fenêtre espace de
travail), et qui peut être ré-utilisée par la suite :
R > b = sqrt(a)
Z Pour effacer les variables en mémoire dans la session R, il faut
taper la commande suivante :
R> rm(list=ls())
(Dr. NDONGO) Logiciel R via Rstudio 13 mai 2022 14 / 44
Premiers programmes R scalaires, vecteurs et matrices
Sommaire
1 Introduction
L’interface RStudio
Le répertoire de travail
Les packages
2 Premiers programmes R
calculs élémentaires
scalaires, vecteurs et matrices
Les fonctions
3 L’aide et la documentation
4 Importation et exportation de données
Importation
Exportation
5 Les graphiques
6 Les statistiques
(Dr. NDONGO) Logiciel R via Rstudio 13 mai 2022 15 / 44
Premiers programmes R scalaires, vecteurs et matrices
Z La variable a définie ci-dessus est un scalaire. R gère également
des vecteurs et matrices. Un des avantages de R est qu’un grand
nombre d’opérations et de fonctions sont applicables directement sur
des vecteurs (voir sur des matrices). Ainsi, le recours au boucle de
type for peut être évitée, et doit généralement l’être pour des raisons
de rapidité d’exécution.
Z Pour créer un vecteur, il est possible d’utiliser la fonction de
concaténation c :
R > x = c(7, 8, 9)
R > y = 1 :3
R > z = rep(x, y)
(Dr. NDONGO) Logiciel R via Rstudio 13 mai 2022 16 / 44
Premiers programmes R scalaires, vecteurs et matrices
Z La commande matrix permet de créer une matrice
R > M1 = matrix(z, 2, 3)
Z ce qui peut également être fait en concaténant des vecteurs en
ligne (rbind) ou en colonne (cbind) :
R > M2 = cbind(x,y)
R > M3 = rbind(x,y)
Z Les tableaux à plus de 2 dimensions, appelés array en R, sont
également utilisables :
R> T = array(0,dim=c(2,3,4)
(Dr. NDONGO) Logiciel R via Rstudio 13 mai 2022 17 / 44
Premiers programmes R scalaires, vecteurs et matrices
Extraire les éléments d’une matrice
Z Soit Mat la matrice de dimensions m × n. La commande Mat[i, j]
permet d’extraire l’élément qui est à la i-ième ligne et j-ième colonne.
> vect=c(1.5 :9.5 )
> Mat=matrix(vect,ncol=3,nrow=3)
> Mat[2,3] affiche l’élément qui est à la 2ième ligne et 3ième colonne.
> Mat[,1] affiche la première colonne
> Mat[3,] affiche la troisième ligne
Z Les opérations arithmétiques et les fonctions mathématiques
fonctionnent éléments par éléments.
(Dr. NDONGO) Logiciel R via Rstudio 13 mai 2022 18 / 44
Premiers programmes R scalaires, vecteurs et matrices
Quelques fonctions sur les matrices
Z Le produit matriciel est obtenu avec % ∗ %
Z Calcul du déterminant : det()
Z t(A) retourne la transposée de la matrice A
Z solve(A) retourne l’inverse de la matrice A
Z solve(A,b) retourne x tel que Ax = b
Z dim(), ncol(), nrow() retournent respectivement la dimension de la
matrice, le nombre de lignes et le nombre de colonnes.
(Dr. NDONGO) Logiciel R via Rstudio 13 mai 2022 19 / 44
Premiers programmes R Les fonctions
Sommaire
1 Introduction
L’interface RStudio
Le répertoire de travail
Les packages
2 Premiers programmes R
calculs élémentaires
scalaires, vecteurs et matrices
Les fonctions
3 L’aide et la documentation
4 Importation et exportation de données
Importation
Exportation
5 Les graphiques
6 Les statistiques
(Dr. NDONGO) Logiciel R via Rstudio 13 mai 2022 20 / 44
Premiers programmes R Les fonctions
Z R dispose d’un grand nombre de fonctions prédéfinies, utilisables
en appelant la fonction par son nom suivi de ses arguments entre
parenthèses :
R> mean(x)
R> rnorm(10)
R> rnorm(10,mean=1,sd=2)
Z Astuce : lorsque vous commencez à taper le nom de la fonction,
vous pouvez en appuyant sur la touche tabulation voir les différentes
fonctions commençant par les lettres déjà saisies. Lorsque le nom de
la fonction est totalement saisi, la tabulation permet de voir les
arguments attendus par la fonction.
Z Il est également possible de créer ses propres fonctions.
(Dr. NDONGO) Logiciel R via Rstudio 13 mai 2022 21 / 44
Premiers programmes R Les fonctions
Structure générale pour créer des fonctions
La structure générale d’une fonction est
mafonction = function (listes des paramètres)
{
commandes
objets retournés
}
Les accolades { et } définissent le début et la fin de la fonction.
La dernière instruction contient le ou les objets retournés par la
fonction.
Exécuter la fonction : mafonction(...)
(Dr. NDONGO) Logiciel R via Rstudio 13 mai 2022 22 / 44
Premiers programmes R Les fonctions
Structure générale pour créer des fonctions
Exemple
Ecrire une fonction qui prend en arguments deux variables x et y , et
qui renvoie leur somme et leur produit.
myfunction = function(x,y)
{
som = x+y
prodt = x*y
return(list("somme"=som,"produit" = prodt))
}
Exécuter cette fonction pour x = 4 et y = 5
R > myfunction(4,5)
$ somme
[1] 9
$ produit
[1] 20
(Dr. NDONGO) Logiciel R via Rstudio 13 mai 2022 23 / 44
L’aide et la documentation
Sommaire
1 Introduction
L’interface RStudio
Le répertoire de travail
Les packages
2 Premiers programmes R
calculs élémentaires
scalaires, vecteurs et matrices
Les fonctions
3 L’aide et la documentation
4 Importation et exportation de données
Importation
Exportation
5 Les graphiques
6 Les statistiques
(Dr. NDONGO) Logiciel R via Rstudio 13 mai 2022 24 / 44
L’aide et la documentation
Z Il est possible d’obtenir de l’aide pour une commande particulière
en tapant la commande :
> ? nom-commande ou ?"nom-commande"
> help(nom-commande) ou help("nom-commande")
Z De plus, il est possible de réaliser une recherche de fonctions à
l’aide de mots-clés grâce à la fonction apropos().
> apropos(mean)
Z Les démos :
> demo() # pour obtenir la liste des demos
> demo(graphics)
Astuce : un bon moyen pour trouver de l’aide et des exemples sur une
fonction consiste simplement à taper le nom de la fonction sous
Google.
(Dr. NDONGO) Logiciel R via Rstudio 13 mai 2022 25 / 44
Importation et exportation de données
Sommaire
1 Introduction
L’interface RStudio
Le répertoire de travail
Les packages
2 Premiers programmes R
calculs élémentaires
scalaires, vecteurs et matrices
Les fonctions
3 L’aide et la documentation
4 Importation et exportation de données
Importation
Exportation
5 Les graphiques
6 Les statistiques
(Dr. NDONGO) Logiciel R via Rstudio 13 mai 2022 26 / 44
Importation et exportation de données Importation
Sommaire
1 Introduction
L’interface RStudio
Le répertoire de travail
Les packages
2 Premiers programmes R
calculs élémentaires
scalaires, vecteurs et matrices
Les fonctions
3 L’aide et la documentation
4 Importation et exportation de données
Importation
Exportation
5 Les graphiques
6 Les statistiques
(Dr. NDONGO) Logiciel R via Rstudio 13 mai 2022 27 / 44
Importation et exportation de données Importation
La fonction read.table()
Z La fonction read.table() permet de lire des fichiers de données au
format texte (ASCII). Cette fonction est destinée à lire les tableaux de
données, les données issues d’un tableur qui auraient été
préalablement transformées en fichier texte, ...
Exemple :
base =read.table(" /Bureau/IAM/courslogicielR/data/wsd2010data.txt",
header=TRUE)
Z Il existe plusieurs variantes de cette fonction pour lesquelles la
valeur par défaut des arguments change : read.csv(), read.csv2(),
read.delim() et read.delim2()
(Dr. NDONGO) Logiciel R via Rstudio 13 mai 2022 28 / 44
Importation et exportation de données Exportation
Sommaire
1 Introduction
L’interface RStudio
Le répertoire de travail
Les packages
2 Premiers programmes R
calculs élémentaires
scalaires, vecteurs et matrices
Les fonctions
3 L’aide et la documentation
4 Importation et exportation de données
Importation
Exportation
5 Les graphiques
6 Les statistiques
(Dr. NDONGO) Logiciel R via Rstudio 13 mai 2022 29 / 44
Importation et exportation de données Exportation
Les fonctions write(), write.table()
Les fonctions write() et write.table() permettent d’exporter des objets R
en fichiers textes. La fonction write() sert pour les vecteurs et les
matrices, la fonction write.table(), elle, exporte les dataframes avec les
noms de ligne et de colonne.
(Dr. NDONGO) Logiciel R via Rstudio 13 mai 2022 30 / 44
Les graphiques
Sommaire
1 Introduction
L’interface RStudio
Le répertoire de travail
Les packages
2 Premiers programmes R
calculs élémentaires
scalaires, vecteurs et matrices
Les fonctions
3 L’aide et la documentation
4 Importation et exportation de données
Importation
Exportation
5 Les graphiques
6 Les statistiques
(Dr. NDONGO) Logiciel R via Rstudio 13 mai 2022 31 / 44
Les graphiques
Les fonctions usuelles plot(), lines(), points()
plot() est la fonction centrale. Les fonctions points() ou lines() sont
utilisées pour superposer des courbes ou des nuages de points.
> x = seq(−4, 4, 0.1) ; y = log(x 2 + 1/x 2 )
> plot(y) ; plot(x,y)
(Dr. NDONGO) Logiciel R via Rstudio 13 mai 2022 32 / 44
Les graphiques
Superposition de courbes
> x=rnorm(20) ; y=rexp(20)
> plot(x,y) # nuage de points
> points(x+.1,y+.1, pch=2) # ajouter un nuage de points
> lines(sort(x),y, lty=2) # ajouter une ligne
> abline(h=3) # ajouter une ligne horizontale
> text(1,5,"commentaire") # ajouter un texte
>title("superposer des courbes") # ajouter un titre
(Dr. NDONGO) Logiciel R via Rstudio 13 mai 2022 33 / 44
Les graphiques
Autres fonctions graphiques
Z hist(x) : trace l’histogramme de x
Z pie(x) : diagramme en secteurs
Z barplot(x) : diagramme en barres verticales
Z boxplot(x) : diagramme en boîte
(Dr. NDONGO) Logiciel R via Rstudio 13 mai 2022 34 / 44
Les statistiques
Sommaire
1 Introduction
L’interface RStudio
Le répertoire de travail
Les packages
2 Premiers programmes R
calculs élémentaires
scalaires, vecteurs et matrices
Les fonctions
3 L’aide et la documentation
4 Importation et exportation de données
Importation
Exportation
5 Les graphiques
6 Les statistiques
(Dr. NDONGO) Logiciel R via Rstudio 13 mai 2022 35 / 44
Les statistiques
Etude de cas
On considère un jeux de données fournissant l’Age, le Genre, la
Faculté et la Note de 19 étudiants d’un institut.
Z Lecture des données :
> database =
read.table(" /Bureau/IAM/courslogicielR/data/wsd2010data.txt",
header=TRUE, quote="")
> names(database)
[1] "Etudiant" "Age" "Genre" "Faculte" "Note"
> attach(database) # permet à R de reconnaître les noms des
variables
(Dr. NDONGO) Logiciel R via Rstudio 13 mai 2022 36 / 44
Les statistiques
Statistique exploratoire unidimensionnelle
Variable qualitative (Genre)
> TG = table(Genre) # tableau de distribution de la variable Genre
> TG # affiche le tableau de distribution
Z Représentation graphique
> barplot(TG, col= c(2,4),main="Diagramme en barres", xlab="Genre",
ylab="Fréquences",axes=TRUE)
> pie(TG, col= c(6,3),main="Diagramme à secteurs circulaires")
(Dr. NDONGO) Logiciel R via Rstudio 13 mai 2022 37 / 44
Les statistiques
Statistique exploratoire unidimensionnelle
Variable qualitative (Genre)
(Dr. NDONGO) Logiciel R via Rstudio 13 mai 2022 38 / 44
Les statistiques
Statistique exploratoire unidimensionnelle
Variable quantitative (Age)
Z Histogramme
> subdivision= c(17.5, 22.5, 27.5, 32.5, 37.5, 42.5) # classes
d’amplitude 5
> hist(Age,subdivision, main="Histogramme de l’Age", xlab="Age",
ylab="Effectifs",col="blue")
> hist(Age,subdivision, prob=TRUE, main="Histogramme de l’Age",
xlab="Age", ylab="Fréquences relatives",col="green")
(Dr. NDONGO) Logiciel R via Rstudio 13 mai 2022 39 / 44
Les statistiques
Statistique exploratoire unidimensionnelle
Variable quantitative (Age)
(Dr. NDONGO) Logiciel R via Rstudio 13 mai 2022 40 / 44
Les statistiques
Statistique exploratoire unidimensionnelle
Moyenne, Ecart-type, coefficient de variation
> moy = mean(Age)
> variance = var(Age)
> ecarttype = sqrt(var(Age))
> CV = sqrt(var(Age))/abs(mean(Age))
(Dr. NDONGO) Logiciel R via Rstudio 13 mai 2022 41 / 44
Les statistiques
Statistique exploratoire unidimensionnelle
Quantiles
> quantile(Age,0.25) # premier quartile
> quantile(Age,0.50) # deuxième quartile
> quantile(Age,0.75) # troisième quartile
> quantile(Age, probs= c(0.25,0.50,0.75)) # donne les 3 quartiles
Z Centile d’ordre t%, t compris entre 1 et 100
> quantile(Age,t/100)
Z Décile d’ordre t%, t compris entre 1 et 10
> quantile(Age,t/10)
(Dr. NDONGO) Logiciel R via Rstudio 13 mai 2022 42 / 44
Les statistiques
Statistique exploratoire unidimensionnelle
Boîte à moustache
boxplot(Age, main="Diagramme en boîte de l’Age", col="blue")
(Dr. NDONGO) Logiciel R via Rstudio 13 mai 2022 43 / 44
Les statistiques
Tableaux de Fréquences croisées
Diagrammes en barres multiples
> TFG = table(Faculte,Genre)
> barplot(TFG, legend = c("Ingenierie", "Management", "Sciences"),
col= c(2,3,5),main="Diagrammes en barres empilées", xlab="genre",
ylab="Facultés",ylim=c(0,30))
(Dr. NDONGO) Logiciel R via Rstudio 13 mai 2022 44 / 44