Dans les résultats d’analyse statistique, R affiche souvent des étoiles à côté des p values avec le code suivant : Signif. codes:  0 ‘’ 0.001 ‘’ 0.01 ‘’ 0.05 ‘.’ 0.1 ‘ ’ 1 Il est possible de les enlever: #on utilise les données irisirissummary(iris)#pour l’exemple on fait une analyse de variance : la longueur des sépales est-elle expliquée par l’espèce?reg<-lm(iris$Sepal.Length~iris$Species)anova(reg)summary(reg) R affiche les résultats avec les étoiles pour les p-values : Analysis of Variance Table Response: iris$Sepal.Length              Df Sum Sq Mean Sq F value    Pr(>F)    iris$Species   2 63.212  31.606  119.26 < 2.2e-16 ***Residuals    147 38.956   0.265       On décide de les enlever en utilisant optionsRead More →

Les boxplots mettent parfois en évidence des individus qu’on peut qualifier d’atypiques ou outliers. Un fois mis en évidence graphiquement on peut les repérer et si nécessaire les enlever. #on crée un jeu de donnée b1<-c(0.1, 0.2,6,5,5,6,7,8,8,9,9,9,10,10,25)#on trace le boxplotboxplot(b1) #il y a 3 outliers #on met le boxplot dans un objet boxbox<-boxplot(b1)boxplot(b1)#box$out donne les outliers#on crée des nouvelles données sans les outliersb2<-b1[-which(b1%in%box$out)]#on vérifieboxplot(b2)Read More →

Le test de Kolmogorov-Smirnov est un test d’hypothèse utilisé pour décider si un échantillon suit une loi de probabilité donnée ou si deux échantillons suivent la même loi. Sous R on peut réaliser ce test avec la fonction ks.test() #on crée des échantillonsa<-rnorm(100,mean=0,sd=1)b<-rgamma(100,shape=1,rate=0.8)c<-rnorm(50,mean=0,sd=1)#a et b proviennent-ils de la même loi?ks.test(a,b)#p=7.5e-11 on rejette l’hypothèse nulle#a et c?ks.test(a,c)#p=0.35 on accepte l’hypothèse nulle#a provient-il d’une loi gamma avec 3 comme paramètre de forme et 2 pour le taux?ks.test(a, »pgamma »,3,2)#p value très faible on rejette l’hypothèse#a provient-il d’une loi normale?ks.test(a, »pnorm »)#p=0.13 on accepte l’hypothèse Comme pour tous les tests, faites bien attention à ce que veut réellement dire ce test, prenezRead More →

Le test de Shapiro-Wilk teste l’hypothèse nulle selon laquelle l’échantillon est issu d’une population normalement distribuée. Si la p-value est inférieure au niveau alpha fixé (souvent 0.05) alors on rejette l’hypothèse nulle et on en conclut que l’échantillon est issu d’une population qui n’est pas normalement distribuée. Voici un exemple avec R : #on simule des échantillons#d issu d’une loi normaled<-rnorm(100, mean = 5, sd = 3)#e issu d’une loi uniformee<-runif(100, min = 2, max = 4)# on réalise un test de shapiroshapiro.test(d)qqnorm(d) #p=0.35 on ne rejette pas l’hypothèse et on vérifie avec un QQplotshapiro.test(e)qqnorm(e) # p=0.00036 on rejette l’hypothèse et on vérifie avec unRead More →

Le diagramme Quantile-Quantile est un outil graphique qui permet de comparer la pertinence de l’ajustement de données à un modèle théorique (loi de probabilité). Cela peut se révéler très pratique pour analyser la normalité des résidus d’un modèle linéaire par exemple. Cet outil permet également de comparer deux distributions : un alignement selon la première bissectrice indique la présence d’une identité de loi. R présente des fonctions de bases permettant de tracer des QQplot : qqplot produit un QQplot de deux jeux de donnéesqqnorm produit un QQplot pour une loi normaleqqline trace la droite de Henry Voyons un exemple d’utilisation #nombres aléatoires tirés d’une loi#normaleRead More →

R possède de nombreuses fonctions de base souvent bien utiles, en voici quelques unes. On crée deux vecteurs : a<-c(1,2,3,4,5,6,7,8,9,10)b<-c(11,12,13,14,15,16,17,18,19,20) Longueur des vecteurs : length(a)length(b) Minimum et maximum : min(a)min(b)max(a)max(b) Etendue : range(a)range(b) Moyenne et médiane : mean(a)mean(b)median(a)median(b) Quantile et écart inter-quantile : quantile(a)quantile(b)IQR(a)IQR(b) Variance et écart-type : var(a)var(b)sd(a)sd(b) Concaténation de a et b : c<-c(a,b)cd<-c(b,a)d Somme des éléments du vecteur, produit, différence des éléments consécutifs du vecteur, somme cummulée : v<-c(1,2,3,4)sum(v) #1+2+3+4prod(v) #1*2*3*4diff(v) #2-1,3-2,4-3cumsum(v) #1, 1+2, 1+2+3, 1+2+3+4Read More →

Vous voulez représenter vos données avec la boîte à moustache de Mr Tukey (boxplot)? Rien de plus facile avec R. #jeu de données fictif pour exemplea<-c(1,1,1,5,5,5,5,6,6,8,8,20,30)b<-c(0.5,4,5,6,6,6,6,6,7,7,7,7,8)#traçons les boxplots de base avec la fonction boxplotboxplot(a)boxplot(b)#on enlève les outliers, en mettant outline=FALSEboxplot(a,outline=FALSE)boxplot(b,outline=FALSE)#pour les mettre à l’horizontalboxplot(a,horizontal=TRUE)boxplot(b,horizontal=TRUE)#changer de couleurboxplot(a,border= »blue »)boxplot(b,border= »purple »)#nouveau jeu de données plus complexen<-c(1,1,1,5,5,5,5,6,6,8,8,20,30,0.5,4,5,6,6,6,6,6,7,7,7,7,8,3,5,8,8,8,8,8,9,9,9,9,11,12)m<-c(rep(‘A’,13),rep(‘B’,13),rep(‘C’,13))data<-data.frame(N=n,M=m)#on visualise le tableau ainsi créédatasummary(data)#On a 13 mesures pour chaque modalité (A,B,C)#comment avoir les boxplots pour chaque modalité?boxplot(data$N~data$M)#on enlève les outliers boxplot(data$N~data$M,outline=FALSE)#on change les couleurs avec l’argument borderboxplot(data$N~data$M,outline=FALSE,border=c(« blue », »purple », »green »))#on change les noms avec names: A devient mesure1, B mesure2, C mesure3boxplot(data$N~data$M,outline=FALSE, names=c(« mesure1″, »mesure2″, »mesure3″))#on ajoute les légendesboxplot(data$N~data$M,xlab= »légende x »,ylab= »légende y »,main= »boxplot »)#on colore les boîtes avec l’argument colboxplot(data$N~data$M,outline=FALSE,col=c(« blue », »purple », »green »)) #on changeRead More →