0% ont trouvé ce document utile (0 vote)
9 vues6 pages

Analyse statistique des loups et plomb

Le document décrit un atelier sur l'utilisation du logiciel R pour analyser des données sur la taille et la concentration en plomb de loups. Il présente comment créer des histogrammes, calculer des statistiques descriptives, représenter des courbes de fréquences cumulées et des boîtes à moustaches pour décrire et comparer les distributions des deux variables.

Transféré par

Zayneb Messaoudi
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)
9 vues6 pages

Analyse statistique des loups et plomb

Le document décrit un atelier sur l'utilisation du logiciel R pour analyser des données sur la taille et la concentration en plomb de loups. Il présente comment créer des histogrammes, calculer des statistiques descriptives, représenter des courbes de fréquences cumulées et des boîtes à moustaches pour décrire et comparer les distributions des deux variables.

Transféré par

Zayneb Messaoudi
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

Institut Supérieur des Arts Multimédia de la Manouba (ISAMM). | 2021-2022.

ATELIER SUR LE LOGICIEL R


Intervenant : Yousri Henchiri.

TP 2 : Statistiques descriptives et graphiques.

Pour évaluer l’impact des rejets d’une usine de pétrochimie sur une baie, on prélève
un échantillon de 100 loups. On mesure sur chaque individu la taille (en cm) et la concen-
tration en plomb (Pb en µg/g). Les résultats de ces mesures se trouvent dans le fichier
[Link] (en pièce jointe).

1. Télécharger le fichier de données [Link] et le sauvegarder dans votre répertoire de


travail.
2. Ouvrir un éditeur de texte et taper les commandes R dans l’éditeur de texte : Créer
un dataframe nommé loups et nommer les 2 variables taille et Pb.

loups=[Link]("[Link]",head=TRUE,sep=";")
names(loups)=c("taille","Pb")
print(loups)

Enregistrer ces commandes sous le nom monTP2.R.

"Sourcer" (exéxuter les commandes) le fichier monTP2.R grâce à l’instruction :


source("monTP1.R")

3. Utiliser les fonctions mean, quantile, summary, var pour calculer les paramètres
numériques des deux distributions observées des variables taille et Pb.
4. Faire les histogrammes des deux distributions observées avec les options par défaut
(choix des classes automatiques, le choix manuel des classes fera l’objet du prochain
TP).

source("monTP2.R")

5. Taper la commande suivante :

DOtaille=hist(loups$taille)
print(DOtaille)
Institut Supérieur des Arts Multimédia de la Manouba (ISAMM). | 2021-2022.

Dire ce que contiennent les variables :

DOtaille$breaks
DOtaille$counts
DOtaille$intensities
DOtaille$density
DOtaille$mids
DOtaille$xname
DOtaille$equidist

6. N’oubliez pas de sauvegarder votre programme complet sous le nom monTP2.R pour
le prochain TP ! !

1 Histogrammes
On ouvre une fenêtre graphique avec l’option x11() puis avec la commande hist(),
on produit un histogramme dans la fenêtre graphique, les classes sont choisies automati-
quement, d’amplitude égale. Plusieurs auteurs ont proposé des choix du nombre de classes.
Par exemple Sturges suggère de prendre (max − min)/(1 + ln2 (n). Le logiciel R prend la
valeur la plus proche de ce nombre qui permet de construire des classes de même longueur :

x11()
hist(loups$taille)

Lorsque les amplitudes des classes sont égales, on peut choisir de représenter en ordon-
née les effectifs nk (par défaut) ou bien les densités de fréquences ou fréquences corrigées
fk /ck (avec ck la longueur des classes) afin d’obtenir un histogramme d’aire égale à 1, grâce
à l’option freq= de la façon suivante :

hist(loups$taille, freq=TRUE)

produit un histogramme avec en ordonnée les effectifs nk des classes. Attention, dans
la légende on lit frequency qui signifie effectif et non pas fréquence (c’est un faux ami !).

Pour avoir, les fréquences corrigées en ordonnées (et donc un histogramme d’aire 1) on
utilise freq=FALSE :

hist(loups$taille, freq=FALSE)

On peut choisir soi-même les classes de l’histogramme grâce à l’option breaks= de la


façon suivante :
Institut Supérieur des Arts Multimédia de la Manouba (ISAMM). | 2021-2022.

hist(loups$taille,breaks=c(5,10,30,40,60),freq=FALSE)

produit un histogramme avec 4 classes [5 ;10[ [10 ;30[ [30 ;40[ [40 ;60[. Dans ce cas, l’op-
tion freq=FALSE est la seule possible ! Expliquer pourquoi.

N.B : Lorsque la répartition des données semble symétrique, il convient de construire


des classes de même amplitude. Si elle n’est pas symétrique ou si une classe a un effectif
nul ou très faible, alors il convient de la regrouper avec la suivante (resp. précédente) si
cette classe se trouve à droite (resp. gauche) de la classe la plus fréquente. Cette technique
permet d’obtenir une répartition la plus régulière possible.

Pour chacune des variables :


• Représenter les histogrammes en utilisant tout d’abord un découpage en classes
équidistantes (de 5 en 5 pour taille et de 10 en 10 pour Pb). On pourra utiliser
l’option freq=TRUE.
• Représenter les histogrammes en utilisant le regroupement en classes suivant :
– pour la variable taille : [5 ; 10[ [10 ; 30[ [30 ; 40[ [40 ; 60[
– et pour la variable Pb : [0 ; 10[ [10 ; 40[ [40 ; 60[.
Attention ! ! ! On utilisera OBLIGATOIREMENT l’option freq=FALSE dans ce cas.
• Commenter l’allure des distributions observées (unimodales, multi-modales, symé-
trique ou non, etc)
• Faire de jolis graphiques avec des : légendes, titre, couleurs en utilisant les options
suivantes :

hist(loups$taille, breaks=c(5,10,30,40,60), xlab="Taille (en cm)",ylab="densité


de fréquence",main="Histogramme de la variable Taille",col="red",freq=FALSE)

2 Distribution observée des effectifs, des fréquences et


des fréquences cumulées
La fonction hist(), en plus du graphique, permet aussi de faire des calculs très utiles
sur la distribution observée (DO) des variables quantitatives. Pour cela on crée un objet
DOtaille de la façon suivante :

DOtaille=hist(loups$taille,breaks=c(5,10,30,40,60))
print(D0taille)

DOtaille est une [Link] qui contient plusieurs variables : counts, breaks, density,
mids, etc...
• Donner la distribution observée des effectifs et celles des fréquences.
Institut Supérieur des Arts Multimédia de la Manouba (ISAMM). | 2021-2022.

cat("Distribution observée des effectifs, "\n")


effectifs=D0taille$counts
print(effectifs)

cat("Distribution observée des fréquences, "\n")


frequences=DOtaille$counts/dim(loups)[1]
print(frequences)

• On calcule ensuite les fréquences cumulées croissantes et décroissantes en utilisant


la fonction cumsum qui fait la somme cumulée des composantes d’un vecteur :

frequences_cum_croiss=c(0,cumsum(frequences)
print(frequences_cum_croiss)

De même, pour obtenir, les fréquences cumulées décroissantes de la DO de la va-


riable taille :

frequences_cum_decroiss=c(1,1-cumsum(frequences)
print(frequences_cum_decroiss)

• De même, calculer la DO des effectifs, des fréquences, des fréquences cumulées crois-
santes et décroissantes pour la variable Pb.

3 Courbe des fréquences cumulées croissantes et dé-


croissantes
Nous allons maintenant représenter le graphique des fréquences cumulées croissantes et
décroissantes de la variable taille. Pour cela, on utilise les fonctions graphiques plot et
points de la façon suivante :

bornes_classes=D0taille$breaks # bornes des classes


plot(bornes_classes,frequences_cum_croiss,type="b")

La fonction plot(x,y,type=) trace le graphique des points de coordonnées (x,y) et


le style de la courbe est défini type= . L’option type="b" trace à la fois des points et relie
ces points par des segments. On peut aussi avoir type="`" ou "p" ou "b".
Maintenant, on veut représenter la courbe des fréquences cumulées décroissantes sur le
même graphique. Pour cela, on utilise la fonction points(), qui permet de rajouter des
points à un graphique pré-existant, de la façon suivante :

points(bornes_classes,frequences_cum_decroiss,type="b")
Institut Supérieur des Arts Multimédia de la Manouba (ISAMM). | 2021-2022.

• Représenter sur le même graphique la courbe des fréquences cumulées croissantes


et décroissantes. On utilisera la variable breaks de l’objet hist pour les bornes de
classes et on créera deux vecteurs l’un contenant les fréquences cumulées croissantes
et l’autre décroissantes.
• Déterminer graphiquement (et approximativement) la valeur de la taille médiane.
Comparer avec la valeur donnée par la fonction quantile.
• De même, Représenter les courbes de fréquences cumulées croissantes et décrois-
santes de la variable Pb pour un nombre de classes de votre choix.

4 Boites à moustaches
• Représenter la boite à moustaches de la distribution observée de la variable taille.

boxplot(loups$taille)

Par défaut, les moustaches s’étendent de chaque côté de la boîte jusqu’aux valeurs
extrémales si ces valeurs ne sont pas plus éloignées de la boîte que 1.5 × (Q3 − Q1 )
(une fois et demi l’écart inter-quartile). Les valeurs qui sont au delà sont représentées
par des points. Si l’on veut que les moustaches s’étendent du min jusqu’au max des
données, on fixe range=0 (sinon range=1.5).
• On souhaite créer dans le [Link] loups, une variable qualitative supplémen-
taire à partir de la variable Pb qui donne le degré de contamination en Plomb avec
pour codage faible="[0,10[" , moyenne="[10,40[" et importante="[40,60[".
On appelle cette variable contamination. Pour cela, on utilise la fonction ifelse
de R.

loups$contamination=ifelse(loups$Pb<10,"faible",ifelse(loups$Pb<40,"moyenne",
"importante"))
print(loups)

ifelse(condition, expression si condition vraie, expression si condition


fausse).

• Représenter les trois boites à moustaches en parallèle de la distribution de la taille


en fonction de la concentration en plomb :

boxplot(taille∼contamination,data=loups)

• Au vu de ce graphique peut-on dire que la concentration en plomb et la taille des


loups sont liées ? Donner une interprétation succincte.
Institut Supérieur des Arts Multimédia de la Manouba (ISAMM). | 2021-2022.

5 Paramètres de position et de dispersion


Pour les deux variables :
• Calculer la moyenne, l’écart-type, les 3 quartiles (en utilisant la fonction quantile),
l’étendue, l’écart inter-quartile.
• Calculer la moyenne et l’écart-type en utilisant les données groupées en classes
(formules avec les centres de classes et les effectifs de chaque classe).
• Calculer la taille moyenne des loups me. Calculer la taille moyenne des loups pour
lesquels la concentration en plomb est faible me_f, moyenne me_m, importante me_i.

me_f= mean(loups$taille[loups$contamination=="faible"])
me_m= mean(loups$taille[loups$contamination=="moyenne"])
me_i = mean(loups$taille[loups$contamination=="importante"])
me = mean(loups$taille)

Vérifier par le calcul que la taille moyenne est égale à la moyenne des tailles dans chaque
groupe.

Vous aimerez peut-être aussi