#---------------------------- # Importation des tableaux de données #---------------------------- setwd("E:/HubW/CoursMath/CoursStatDescrip/DesUniv") (satis <- read.table("TroisDistribEx1T2.csv", sep = ";", header = TRUE, dec = ",")) # Depuis D620 setwd("~/Documents/CoursMath/ProbaStat/Descript/DesUniv") satis <- read.csv("TroisDistribEx1T2.csv", header = TRUE, sep=";", dec=",") #---------------------------- # Vérifications des tableau de données names(satis) dim(satis) str(satis) #---------------------------- # ANALYSE EXPLORATOIRE DES DONNÉES #---------------------------- # Description de la variable origine # --> Tri à plat de la variable origine : # = Tableau des effectifs table(satis$origine) #---------------------------- # Illustration graphique du tableau des effectifs de la variable origine # = Illustration graphique de la distribution des effectifs plot(satis$origine, main = "Diagramme en barre des effectifs des modalités de la variable origine", xlab = "Region d'origine", ylab = "Effectifs", col = c("red", "blue", "green")) barplot(table(satis$origine), main = "Diagramme en barre de la variable origine", xlab = "Région d'origine", ylab = "Effectifs", col = c("red", "blue", "green")) plot(table(satis$origine), main = "Diagramme en barre de la variable origine", xlab = "Région d'origine", ylab = "Effectifs", col = c("red", "blue", "green")) #---------------------------- # Description graphique de la variable note faite par # modalités de la variable origine attach(satis) #---------------------------- # Juxtaposition horizontale de diagrammes en boite plot(origine, note, horizontal = FALSE, col = c("red", "blue", "green"), main = "Diagrammes en boites = boites à pattes", xlab = "Origine des hôtes", ylab = "Notes de satisfaction pour le gîte", ylim = c(0, 10), varwidth = TRUE) # Pour connaitreles valeurs des paramètres utilisés plot(origine, note, plot = FALSE) # On n'en prend que les quantiles plot(origine, note, plot = FALSE)$stats quantile(note[origine == "est"], type = 2) quantile(note[origine == "sudest"], type = 2) quantile(note[origine == "sudouest"], type = 2) # Une autre fonction graphique ayant le même résultat : boxplot(note ~ origine, horizontal = TRUE, col = c("red", "blue", "green"), main = "Diagrammes en boites = boites à pattes", ylab = "Origine des hôtes", xlab = "Notes de satisfaction pour le gîte", ylim = c(0, 10), varwidth = TRUE) #---------------------------- # LES HISTOGRAMMES AVEC R # Détermination des bornes des intervalles pour les histogrammes (bornes1 <- seq(0, 10,1)) (bornes2 <- seq(0, 10, 2)) # Quelques exemples pour comprendre comment la fonction hist(...) gère # les différents type d'intervalles [a ; b[ ou ]a ; b] exemple1 <- c(9, 5, 9, 0, 3, 5, 10, 4, 4, 7, 2, 0, 2, 7, 3, 7, 4, 9, 6, 9) hist(exemple1, breaks = bornes2, right = TRUE, plot = FALSE) hist(exemple1, breaks = bornes2, right = FALSE, plot = FALSE) hist(exemple1, breaks = bornes2, right = TRUE, labels = TRUE) hist(exemple1, breaks = bornes2, right = FALSE, labels = TRUE) hist(exemple1, breaks = bornes2, right = FALSE, labels = TRUE, freq = FALSE) hist(exemple1, breaks = bornes1, right = FALSE, labels = TRUE) hist(exemple1, breaks = bornes1, right = FALSE, labels = TRUE, freq = FALSE) #---------------------------- # Histogrammes de la variable note # Pour afficher les valeurs utilisées pour construire les histogrammes hist(note[origine == "sudouest"], breaks = bornes1, right = FALSE, plot = FALSE) hist(note[origine == "sudest"], breaks = bornes1, right = FALSE, plot = FALSE) hist(note[origine == "est"], breaks = bornes1, right = FALSE, plot = FALSE) #---------------------------- # Justaposer verticalement les 3 histogrammes # dans une même fenêtre graphique par(mfrow = c(3, 1)) hist(note[origine == "sudouest"], col = "green", main = "Histogramme de la série sudouest", breaks = bornes2, right = FALSE, ylim = c(0, 6), labels = TRUE) hist(note[origine == "sudest"], col = "blue", main = "Histogramme de la série sudest", breaks = bornes2, right = FALSE, ylim = c(0, 6), labels = TRUE) hist(note[origine == "est"], col = "red", main = "Histogramme de la série est", breaks = bornes2, right = FALSE, ylim = c(0, 6), labels = TRUE) par(mfrow = c(1, 1)) #---------------------------- # Description semi graphique en branches et feuilles # après avoir fait affiché les modalités de la variable origine levels(origine) stem(note[origine == "sudouest"], scale = 1) stem(note[origine == "sudest"], scale = 2) stem(note[origine == "est"], scale = 2) #---------------------------- sort(note[origine == "est"]) sort(note[origine == "sudest"]) sort(note[origine == "sudouest"]) #---------------------------- # Quelques résumés graphiques des notes par modalités # de la variable origine aggregate(list(NOTE = note), by = list(ORIGINE = origine), FUN = length) aggregate(list(NOTE = note), by = list(ORIGINE = origine), FUN = quantile) aggregate(list(NOTE = note), by = list(ORIGINE = origine), FUN = mean) SDn <- function(x){sqrt(sd(x)^2 * (length(x) - 1) / length(x))} aggregate(list(NOTE = note), by = list(ORIGINE = origine), FUN = SDn) QuantBox <- function(x){quantile(x, type = 2)} aggregate(list(NOTE = note), by = list(ORIGINE = origine), FUN = QuantBox) #---------------------------- # DES PACKAGES POUR D'AUTRES OUTILS DE DESCRIPTION STATISTIQUE #---------------------------- # Histogrammes par modalités de la variable origine # avec le package lattice require(lattice) histogram(~note | origine, layout = c(1, 3), breaks = bornes1, type = "count", right = FALSE) detach(package:lattice) #---------------------------- # Quelques résumés numériques, avec le package Hmisc require(Hmisc) moyetyqu <- function (x, pquant = c(0, .10, .25, .50, .75, .90, 1)){ moy <- mean(x) et <- sd(x) quant <- quantile(x, prob = pquant, type = 2) c(Moyenne = moy, Ecartype = et, quant) } resnum3 <- function(x){moyetyqu(x)} summary(note ~ origine, fun = resnum3) detach(package:Hmisc) #---------------------------- detach(satis)