0% ont trouvé ce document utile (0 vote)
74 vues33 pages

Initiation À R

Transféré par

Papa Ahmadou Fall
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
74 vues33 pages

Initiation À R

Transféré par

Papa Ahmadou Fall
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Intiation à R

Souleymane BAH
bsouleymane@[Link]
[Link]

11 octobre 2024
Mis à jour en novembre 2024
PLAN
1. Présentation de R

2. Installation R, RTools et RStudio

3. Présentation de l'interface de RStudio

4. Mon premier programme R

5. Assignation

6. Type des objets

7. Conditions

8. Boucles

9. Librairies

10. Chargement et Export de données

11. Traitement de données

12. Graphiques 2
1.1 Initiation à R : Présentation de R

• Ross Ihaka et Robert Gentleman, université d'Auckland, 1983


• Inspiré du langage S
• R : Langage de programmation objet et logiciel libre
• Utilisé en statistiques et en data science
• Multiplateforme

3
1.2 Initiation à R : Installation
Etapes
1. Installer R
[Link]

2. Installer Rtools (utilisé pour créer des paquets R à partir des sources) et
choisir les paramètres par défaut
[Link]

3: Installer RStudio
[Link]
4
1.3 Initiation à R : Présentation de l'interface de
RStudio
Scripts
Variables et
historique

Fichiers et
dossiers,
Graphiques,
Packages,
Aide
Console R

5
1.4 Initiation à R : Mon premier programme R 1/3
• Dans la console

6
1.4 Initiation à R : Mon premier programme R 2/3
• Script

7
1.4 Initiation à R : Mon premier programme R 3/3
• Script
• Enregistrer le fichier (CTRL + S)
• Mettre le curseur sur la ligne
• Cliquer sur Run

8
1.5 Initiation à R : Assignation
• "Stocker" une valeur dans une variable
• <-
• Exemple
a <- 5
b <- 3

9
1.6 Initiation à R : Type des objets 1/9

• Numérique, Caractères, Logique, Complexe

• Vecteurs, Matrices, Listes, Data Frame

• Type d’un objet : mode(variable)

10
1.6 Initiation à R : Type des objets 2/9

• numeric : nombre entier ou réel


a <- 5

mode(a)

b <- -4.3

mode(b)
11
1.6 Initiation à R : Type des objets 3/9

• character : caractères
choix <- 'o'

choix

mode(choix)

message <- "bonjour"

message

mode(message)
12
1.6 Initiation à R : Type des objets 4/9

• logical : variable booléenne qui prend la valeur Vrai (TRUE) ou Faux (FALSE)
a <- TRUE

mode(a)

b <- FALSE

mode(b)
13
1.6 Initiation à R : Type des objets 5/9

• complex : nombre complexe


# fonction complex() pour créer un nombre complexe (# : commentaire)

cplx <- complex(real = 5, imaginary = -17)

cplx

mode(cplx)

14
1.6 Initiation à R : Type des objets 6/9
• Vecteur : Eléments de même type
• Fonction c() pour concaténer les objets en un vecteur
• Exemple :
v1 <- c(1, 17, 50000)
v1
v1[2] # valeur position 2
v2 <- c(id = 1, age = 17, salaire = 50000) # Nom et valeur
v2
v2["age"] # valeur élément age
v2[2]
v3 <- c("Pomme", "Mangue", "Orange")
v3
v3[1] 15
1.6 Initiation à R : Type des objets 7/9
• Matrice : vecteur de dimension 2

• Fonction matrix()

• Exemple :
m <- matrix(c(1, 2, 3, 4, 5, 6), ncol = 3, nrow = 2, byrow = TRUE)

m[2, 3]

16
1.6 Initiation à R : Type des objets 8/9
• Liste : vecteur dont les éléments peuvent être de types différents

• Fonction list()

• Exemple :
liste1 <- list(nom = "Toto" , age = 22, enfants = c("Pierre" , "Jeanne"))
liste1
liste1$nom
liste2 <- list(nom = "Rabia" , age = 30, enfants = c("Kabirou" , "Adamou", "Rayan"))
liste2
population <- list(individu1 = liste1, individu2 = liste2) # liste de liste
population$individu2$enfants
17
1.6 Initiation à R : Type des objets 9/9
• Data Frame : tableau à 2 dimensions dont tous les éléments sont de même
longueur
• Fonction [Link]()
• Exemple :
col1 <- c("Déreck" , "Walid" , "Siméon")
col2 <- c(2000, 1988, 2008)
df <- [Link](col1, col2)
df
df$col1
# Ajout d’en-tête
colnames(df) <- c("Nom","Année")
df
df$Nom
18
1.7 Initiation à R : Conditions
• Syntaxe
if (condition1) {
traitements 1
} else if (condition2) {
• Exercice
Mettre une valeur dans a et b, variables
traitements 2
Comparer a et b (condition) et Afficher le message print(" ") :
} else if (condition3) {
a est plus grand que b, sinon
traitements 3
a est plus petit que b, sinon

a et b sont égaux
} else {
traitements n
}
• Condition
• Egalité : a == b (et non a = b)
• Différence : a != b
• Supérieur : a > b ; Supérieur ou égal : a >= b
• Inférieur : a < b ; Inférieur ou égal : a <= b
19
1.7 Initiation à R : Conditions
• Syntaxe
if (condition1) { • Correction
traitement1 # Changer les valeurs de a et b
} else if (condition2) { a <- 5
traitement2 b <- 3
} else { if (a > b) {
traitement_n print("a est plus grand que b")
} } else if (a < b) {
• Egalité : a == b (et non a = b) print("a est plus petit que b")
• Différence : a != b } else {
• Supérieur : a > b ; Supérieur ou égal : print("a et b sont égaux")
a >= b
• Inférieur : a < b ; Inférieur ou égal : a }
<= b
20
1.8 Initiation à R : Boucles (for)
• Syntaxe for (nombre de fois connu) • Pratique for
for (variable in liste) { Afficher les nombres de 1 à 50
traitements
Astuce, liste <- 1:50
}

21
1.8 Initiation à R : Boucles (for)
• Syntaxe for (nombre de fois connu) • Correction for
for (variable in liste) { liste <- 1:50
traitements
for (i in liste) {
}
print(i)
}

22
1.8 Initiation à R : Boucles (while)
• Syntaxe while (tant que condition remplie) • Pratique while
while (condition) { Afficher les nombres de 1 à 50
traitements
Astuces :
}
Boucles infinies (clic sur STOP) initialiser au préalable
afficher
incrémenter
i <- i + 1
ou décrémenter
i <- i - 1
23
1.8 Initiation à R : Boucles (while)
• Syntaxe while (tant que condition remplie) • Correction while
while (condition) { i <- 1
traitements
while (i <= 50) {
}
print (i)
i <- i + 1
}

24
1.9 Initiation à R : Librairies

• Package : fonctions, de jeux de données et documentation

• Installer un package

[Link]("nom_package")

• Charger un package

library(nom_package)

• Exercice : Installer puis charger le package "caret" utilisé en Machine Learning


25
1.9 Initiation à R : Librairies
• Package : fonctions, de jeux de données et documentation

• Installer un package
[Link]("nom_package")

• Charger un package
library(nom_package)

• Solution :
• Installer le package "caret" : [Link]("caret")

• Charger le package "caret" : library(caret)


26
1.10.1 Initiation à R : Chargement de données
• Fichier CSV : fonction [Link]()
• Syntaxe
df = [Link]("chemin_vers_fichier", header=TRUE|FALSE, sep='séparateur', dec='décimale')
• Pour plus de commodités, sélection du répertoire actif
base::setwd("répertoire_de_base") # séparateur \\ Windows et / Linux
• Exemple : Télécharger le fichier [Link]
[Link]
base::setwd("C:\\SCRIPTS_R") # Adapter au besoin
# Concentrations CO2 du 10-17 mars 2024, Observatoire Mauna Loa, Hawai
# Décimale : .
df <- [Link]("[Link]", header=TRUE, sep=',', dec='.')
df
df$CO2
• Autre librairie : readxl pour fichiers Excel 27
1.10.1 Initiation à R : Export de données
• Fichier CSV : fonction [Link]()
• Syntaxe
[Link](df, file = "chemin_vers_fichier", [Link]=TRUE|FALSE)
• Pour plus de commodités, sélection du répertoire actif
base::setwd("répertoire_de_base") # séparateur \\ Windows et / Linux
• Exemple
col1 <- c("Dereck" , "Walid" , "Simeon")
col2 <- c(183.3, 150, 160.2)
df <- [Link](col1, col2)
colnames(df) <- c("Nom","Taille")
df
base::setwd("C:\\SCRIPTS_R") # Adapter au besoin
# Sans nom lignes (numéros lignes par exemple)
[Link](df, file = "mon_fichier.csv", [Link] = FALSE)
• Autre librairie : writexl pour fichiers Excel
28
1.11 Initiation à R : Traitement de données
• Moyenne : mean(variable)
• Minimum : min(variable)
• Maximum : max(variable)
• Autres : Variance → var(), Ecart-type →sd(), …
• Exemple :
col1 <- c("Déreck" , "Walid" , "Siméon")
col2 <- c(183.3, 150, 160.2)
df <- [Link](col1, col2) # exemple précédent
colnames(df) <- c("Nom","Taille")
df$Taille
moy <- mean(df$Taille)
moy 29
1.12 Initiation à R : Graphiques 1/3
• Découpage de la zone de dessin en x lignes et y colonnes
• par(mfrow=c(x,y))
• Nuage de points : données d'abcisse x et d'ordonnéey
• plot(x,y)
• Légende
• title(main = "Titre", xlab = "Nom Abcisse", ylab="Nom Ordonnée")
• Courbe
• curve(fonction, from = valeur_début, to=valeur_fin)
• Autres fonctions :
• boxplot() → boîte à moustache
• hist() → histogramme
• ...
• Aide : help(fonction)
• Exemple : help(plot) 30
1.12 Initiation à R : Graphiques 2/3
Exemple
# Données (tailles populations)
pop1 <- c(183.3, 150, 160.2)
pop2 <- c(103.3, 75.2, 85)
pop3 <- c(153.3, 200, 25.32)
pop4 <- c(202.1, 100.2, 150)
# Découpage de la zone de dessin en 1 lignes et 2 colonnes
par(mfrow=c(1, 2))
# Boîte à moustache et légendes
boxplot(pop1, pop2, names = c("Population 1", "Population 2"))
title(main = "Population 1 vs Population 2" , xlab = "Population" , ylab="Taille")
boxplot(pop3, pop4, names = c("Population 3", "Population 4"))
title(main = "Population 3 vs Population 4" , xlab = "Population" , ylab="Taille") 31
1.12 Initiation à R : Graphiques 3/3
• Export du graphique

32
3. Ressources
• Introduction à la programmation en R
[Link]
[Link]/doc/contrib/Goulet_introduction_programmation_R.pdf

33

Vous aimerez peut-être aussi