Académique Documents
Professionnel Documents
Culture Documents
Contents
Introduction 1
Arithmétiques 2
Vecteurs dans R 3
Data frame 4
Statistiques descriptives 6
Représsentations graphiques 7
Programmation avec R 15
Introduction
L’utilisation de R présente plusieurs avantages :
• R est un logiciel multiplateforme, qui fonctionne sur les systèmes Linux, Mac OS et Windows
• C’est un logiciel gratuit
• C’est un logiciel dont le développement est très actif et dont la communauté d’utilisateurs ne cesse de
s’élargir
• C’est un logiciel avec d’excellentes capacités graphiques
• R est un langage de programmation orientée objet
• R aussi, peut présenter certains désavantages
Autre commande
1
R.version
Pour avoir l’aide sur une fonction R vous mettez ? devant le nom de la fonction:
? mean()
args(read.csv)
Installer un pacakage:
Un package est une bibliothèque externe qui contient des collections de fonctions utilisables sous R. ils sont
Souvent centrés sur un sujet particulier (ex. rpart pour les arbres de décision, etc.). Nous pouvons installer
des packages, les désinstaller, les charger, les décharger et les mettre à jour.
Pour installer un package:
install.packages("nom_package")
OU
2
require(nom_package)
Arithmétiques
1+2
## [1] 3
exp(25)
## [1] 72004899337
4^5
## [1] 1024
abs(-25)
## [1] 25
X=2.354
Y=X+4
Y/3
## [1] 2.118
32*4
## [1] 128
Pour fixer le nombre de chiffre après la virgule
options(digits=2 )
print(Y)
## [1] 6.4
Vecteurs dans R
Créer un vecteur avec des éléments de 1 à 12
V1=1:12
OU
V2=seq(from=1,to=12,by=1)
3
V4=c("bleu","vert","marron")
Pour saisir une série de données à l’aide de clavier, utiliser la fonction scan(); R vous donne la main et vous
pouvez taper les valeurs de la série. Le premier retour-chariot après une chaîne vide met fin à la saisie:
V7=scan()
Data frame
Lire un jeu de données text:
setwd("D:\\Enseignement\\EMI\\cours_R\\data2")
data1=read.table("Insee2003.txt",header =TRUE)
Afficher le dataset
View(data1)
## [1] 12 4
Afficher le nombre de lignes du jeu de données
4
nrow(data2)
## [1] 12
Afficher le nombre des colonnes du tableau
ncol(data2)
## [1] 4
Afficher le type d’une variable
class(data2)
## [1] "data.frame"
Afficher la structure des variables du jeu de données
str(data2)
## x y
## 1 1 blue
5
## 2 2 green
## 3 3 brown
## 4 4 black
## 5 5 yellow
Changer les nomes des colonnes du tableau
names(data)=c("Var1", "Var2" )
Statistiques descriptives
str(data2)
## [1] 75
variance de la variable espérance de vie
Ecart type de la variable espérance de vie
var(data2$lifeexp)
## [1] 27
sd(data2$lifeexp)
## [1] 5.2
min de la variable espérance de vie
6
min(data2$lifeexp)
## [1] 62
maximum de la variable espérance de vie
max(data2$lifeexp)
## [1] 81
Afficher le minimum et le maximum de la variable espérance de vie
range(data2$lifeexp)
## [1] 62 81
Mediane
median(data2$lifeexp)
## [1] 76
Afficher le résumé statistique de la variable espérance de vie
summary(data2$lifeexp)
##
## High Low
## 6 6
Covariance entre lifeexp et unemploymen
cov(data2$lifeexp,data2$unemploymen)
## [1] -5.1
Coefficient de correlation entre lifeexp et unemploymen
cor(data2$lifeexp,data2$unemploymen)
## [1] -0.41
# la fonction pairs() permet de visualiser la matrice de correlation
Représsentations graphiques
Histogramme des effectifs
hist(data2$lifeexp,col="green",xlab="lifeexp",ylab="effectifs",main="histogramme")
7
histogramme
4
effectifs
2
0
60 65 70 75 80 85
lifeexp
Histogramme des fréquences
hist(data2$lifeexp,col="orange",xlab="lifeexp",ylab="effectifs",main="histogramme",probability =T)
histogramme
0.08
effectifs
0.04
0.00
60 65 70 75 80 85
lifeexp
Boîte à moustaches
boxplot(data2$lifeexp,col="red",xlab="happiness",ylab="effectifs",main="histogramme")
8
histogramme
effectifs
75
65
happiness
Diagramme en bâtons
Y=table(data2$happiness)
barplot(Y,col=c("red","yellow"),xlab="",ylab="effectifs",main="lifeexp")
lifeexp
6
effectifs
4
2
0
High Low
diagramme en secteurs
Y=table(data2$happiness)
pie(Y,col=c("red","yellow"),main="Happiness")
9
Happiness
High
Low
6
4
2
0
65 70 75 80
lifeexp
boxplot(lifeexp~happiness,data=data2,col=c("blue","green"))
10
75
lifeexp
65
High Low
happiness
##
## FALSE TRUE
## 25 136
Le nombre d’individus qui vérifient la condition sexe == ”F emme”
table(data1$sex=="Femme")
##
## FALSE TRUE
## 76 85
le nombre d’individus qui vérifient la condition sexe == ”F emme”&age < 40)
table(data1$sex=="Femme" & data1$age<40)
##
## FALSE TRUE
## 132 29
le nombre d’individus qui vérifient la condition:sexe == ”F emme”ou nbr de f reres et soeurs == 4)
table(data1$sex=="Femme" | data1$freres.soeurs==4)
##
## FALSE TRUE
11
## 67 94
les effectifs des individus différents de femmes
table(data1$sex!="Femme" )
##
## FALSE TRUE
## 85 76
Sélectionner la base de données qui contient que les individus avec un age > 80
dage= subset(data1, age>80)
Utiliser l’argument select pour simplifier l’expression d’une condition sur les colonnes.
Avoir une base de données constituée des deux variables sexe etsport
df1=subset(data1,select= c(sexe, sport))
head(df1)
Sélectionner une base de données constituée de tous les variables à l’exception de âge et bricol sachant que
l’age des individus soit supérieur à 25
df2<- subset(data1, age>25,select=- c(id, age, bricol))
head(df2)
## Non Oui
## 17 17
12
##
## (0,20] (20,40] (40,60] (60,80] (80,100]
## 6 47 64 40 4
On peut tenir compte des âges extrêmes pour la première et la dernière valeur
range(data1$age)
## [1] 19 90
data1$age20=cut(data1$age, c(19,20,40,60,80,90))
Histogram of ech1
150
Frequency
0 50
30 34 38
ech1
13
Histogram of ech2
100 200
Frequency
0 2 4 6 8 10
ech2
Echantillon d’une loi binomiale de paramétre n=50 et
p=0.2
ech3=rbinom(1000,50,0.2)
hist(ech3,col="yellow")
Histogram of ech3
250
Frequency
100
0
5 10 15 20
ech3
Echantillon d’une loi uniforme,min=0 et max=1
ech4=runif(1000)
hist(ech4,col="blue")
14
Histogram of ech4
Frequency
80
40
0
ech4
Echantillon d’une loi geométrique
ech5=rgeom(1000,prob=0.2)
hist(ech5,col="orange")
Histogram of ech5
400
Frequency
200
0
0 5 15 25
ech5
Programmation avec R
Boucle for()
for(i in 1:20){
print(i)
}
Boucle while()
j=0
while(j<10){
print("inf à 10")
j=j+1
15
}
instruction if()
if(j<10){
print('vrai')
}else{
print('faux')}
16