Expert - Statistique

Les premiers pas dans R :


  • Utiliser R comme une simple calculette avec : les opérations de bases (+,-,*, / ) , les puissances (^) et racines carrées (sqrt), et les fonctions élémentaires (log, exp, sin, cos, ...).


  • Création de vecteurs "à la main" : y = c( , , , , )
Créer plusieurs vecteurs (de nature numérique ou nominale) et reprendre les opérations et fonctions élémentaires sur ces objets.
Que construit la commande " a:c " ? par le help , comprendre les commandes rep et seq (help(rep)).
Utiliser les fonctions min, max, sort, sum, cumsum, prod, cumprod, length et calculer alors la moyenne et la variance d'un vecteur.
Construire un vecteur centré, lister les valeurs des indices 2 à 8.
En extraire les valeurs positives, extraire les indices de ces valeurs et les 5 plus petites valeurs.


  • Les indices statistiques élémentaires : mean, var, sd, median. Comparez aux résultats précédents et à la fonction summary.


  1. Lister les objects objects(), en détruire rm( )


  • Sauver votre espace de travail dans un répertoire "Stat_Master", quitter R q() et récupérer votre espace de travail (données et historique des commandes).


  • Premier graphique : plot et les options type, xlab, ylab, pch (symbole), lwd (épaisseur), col (couleur)
Tracer la fonction "sin(x)/x" entre -1 et 1 ; idem pour "log(x/(1-x))" entre 0 et 1.
Utiliser les fonctions plot, hist et boxplot.
Créer les 2 vecteurs : c( rep(1,10), rep(4, 5), rep(5, 12)) et c( rep('A',10), rep('D', 5), rep('C', 12)) et utiliser alors la fonction plot et barplot sur la sortie de la fonction table. Idem pour pie.
Faire le plot de 2 vecteurs de données.


  • Lire des données à partir d'un fichier : read.table("file") ou scan("file")
Un premier jeu de données : voir le détail ici.
Récupérer les fichiers "accident" ( read.table) et "vente presse" ( scan).
Renommer les colonnes du fichier "accident".
Ré-utiliser les fonctions plot, hist et boxplot.
Sur un jeu de données qui vous intéresse, faire un début d'analyse simple.# Lire les données "gardon" avec read.table et l'option header.
Certaines colonnes sont des vecteurs is.vector, d'autres des facteurs is.factor
Que donne la fonction summary sur un vecteur et un facteur idem pour levels ?
La fonction factor transforme un vecteur en facteur, que construit la fonction table ?
Reprendre plot et barplot.
tapply(vecteur, facteur, fonction) applique la fonction sur le vecteur pour chaque niveau du facteur.


  • La fonction matrix construit une matrice : matrix(1,nrow=20, ncol=5)
Lire les données "accident" par la fonction scan et reconstruire la matrice des observations.
Calculer la matrice des variances covariances et des corrélations des données Accident par une commande R.
Pour les fans d'écriture matricielle : t(M) transpose la matrice M, A %*% B calcule le produit des 2 matrices A et B ; retrouver la matrice des variances covariances par quelques lignes de commandes.



Quelques éléments de simulation :


  • Simuler vos premières données par sample sur des objets du type 1:I ; c(a,b,c,d,e, etc ...) ; c("a","b","c", etc ..)
en utilisant les options replace, prob.
Recommencer plusieurs fois les mêmes commandes, visualiser les sorties par la fonction table dans les cas où c'est adapté.


  • Simuler des données par rnorm et reprendre indices statistiques et graphes.
  • Que donnent les fonctions dnorm, qnorm, pnorm ?
  • Tracer la densité de probabilité de la loi normale, et (sur le même graphique) l'histogramme de vos données simulées.
plot(dnorm, -3,3, xlim=c(-3,3), ylim=c(0, 0.5))
par(new=TRUE)
hist(x, freq=FALSE, xlim=c(-3,3), ylim=c(0, 0.5) )
  • Tracer la fonction de répartition de la loi normale, et (sur le même graphique) la fonction de répartition empirique de vos données simulées.


  • Divers
Autres indices : faire le calcul du skewness et kurtosis d'un vecteur simulé.
Autre graphe : la fonction qqnorm.
Reprendre les mêmes éléments avec d'autres loi : rexp, rt, rbinom, rpois.
Autre graphe : la fonction qqplot.


  • Illustration de la loi des grands nombres par simulation :
plot( cumsum(rnorm(N, mu))/(1:N), type = "l")
Jouer avec plusieurs valeurs de "N" et "mu" : commenter !


  • Illustration du théorème central limite par simulation.
hist( mean( data.frame(matrix(rexp(N),L, N/L ))))
Jouer avec plusieurs valeurs de "N" et "L" : commenter !


  • Simuler 500 sondages de taille N, et probabilité p.
Sondage = rbinom(500, N, p) / N
Observer la distribution et la dispersion des résultats obtenus.



Les premiers tests Statistiques dans R


  • Test du Khi2 : test d'indépendance sur tableau de contingence et test d'adéquation.
Résoudre les exercices suivants à l'aide de la fonction chisq.test et des options x, p, rescale.p.
Utiliser aussi les sorties de cette fonction pour visualiser les valeurs attendues et leurs écarts aux valeurs observées.


  • Test sur une moyenne et sur une proportion :
A partir des données "accident" et à l'aide de la fonction t.test et de ses options :
Tester si le nombre moyen d'accident par mois est significativement plus petit que 60.
Que signifie l'intervalle de confiance proposé dans la sortie de cette fonction ?
Que devient-il si l'on modifie le seuil ? si l'on modifie l'hypothèse alternative ?
A partir de quel seuil rejetez-vous l'hypothèse H0 ?
Résoudre les exercices suivants à l'aide de la fonction binom.test et de ses options.


  • Test de comparaison de 2 moyennes et de 2 proportions :
A partir des données "accident", de la fonction t.test et de ses options :
Tester si le nombre d'accident moyen par mois est plus petit la 3e année que la 1re
Pour vérifier si les variances de ces deux échantillons sont égales, utiliser la fonction var.test
Reprendre le test avec t.test en tenant compte de cette information supplémentaire. Cela change-t-il quelque chose pour la comparaison des moyennes ?
A partir des données "gardon", de la fonction prop.test et de ses options :
Tester si la proportion de gardons dans la Loire est plus élevée que dans la Garonne



La modélisation Statistique dans R


  • La régression linéaire :
Simuler des données d'un modèle de régression linéaire simple.
Retrouver par les fonctions lm et glm les valeurs des paramètres que vous avez proposés.
Quel résultat fournis l'object lm(y~1) ?
Faire les régressions linéaires simples sur la fichier accident : on expliquera le nombre d'accident par chacune des variables qualitatives.
Faire les graphiques en traçant les droites de régressions.
À chaque étape de la modélisation, on regardera graphiquement la qualité des résidus par les fonctions plot et qqnorm
Faire la régression linéaire multiple avec toutes les variables.
Supprimer une à une les variables non significatives.


  • L'analyse de la variance :
Sur les données accident :
créer un facteur année, et tester l'effet de ce facteur.
créer aussi les 3 indicatrices correspondant aux 3 années et tester leur effet une par une.
que passe t-il lorsque l'on met 2 quelconques de ces indicatrices dans le modèle ? et 3 ?
Sur les données presse :
créer un facteur année, et tester son effet
créer un facteur semestre, et tester son effet
créer un facteur trimestre, et tester son effet
Reprendre l'exemple du cours
créer un fichier de données annexe, qui contienne l'information du tableau, cie le rendement, la dose et le produit.
lire ce fichier dans R et renommer chaque colonne.
construire des modèles d'analyse de la variance avec les 2 facteurs dose et produit :
+ dose * produit : le modèle complet
+ dose + produit : le modèle sans interaction
+ dose : le modèle à 1 seul facteur, idem pour produit
Combiné maintenant variable quantitative et facteur :
sur les données accident, combiner la ou les variables climatiques déjà sélectionnées avec l'effet de l'année.
sur les données presse, combiner la variable temps avec le facteur le plus significatif.