Notes du cours 10
Transcription
Notes du cours 10
STT1682 AUTOMNE 2011 ANALYSE DESCRIPTIVE EN R ET SAS SAS: PROCÉDURE UNIVARIATE La procédure UNIVARIATE permet de faire une analyse descriptive assez détaillée des variables numériques en SAS. La syntaxe avec les options les plus importantes est cidessous. Il existe un peu plus de possibilités avec cette procédure: pour plus d’information sur ce sujet, voir le site de SAS. PROC UNIVARIATE <options> ; BY variables ; CDFPLOT <variables> < / options> ; CLASS variable1 variable2 etc.; HISTOGRAM <variables> < / options> ; QQPLOT <variables> < / options> ; VAR variables ; run; • BY: pour faire l’analyse séparément pour différentes valeurs d’une variable de catégorie (il faut avoir fait un sort avant); présente les résultats des différentes catégories dans des tableaux et des graphiques différents. • CDF (cumulative distribution function): pour afficher le graphique de la fonction de répartitio. • CLASS: pour faire l’analyse selon différentes valeurs d’une variable de catégorie; présente les résultats des différentes catégories dans les mêmes tableaux et graphiques. • HISTOGRAM: afficher l’histogramme • QQPLOT: pour afficher le graphique quartile quartile. • VAR: pour donner les variables pour lesquelles on veut les statistiques descriptives. STT1682 AUTOMNE 2011 TABLEAUX OUTPUT DE LA PROCÉDURE UNIVARIATE Les tableaux suivants montrent les résultats de l’analyse faite sur la variable âge: Basic Statistical Measures Location Variability Mean 46.26 Std Deviation 6.09 Median 46.97 Variance 37.06 Mode . Range 27.57 Interquartile Range 7.95 Quantiles Quantile Estimate 100% Max 60.41 99.00% 60.41 95.00% 57.87 90.00% 53.12 75% Q3 50.08 50% Median 46.97 25% Q1 42.13 10.00% 38.58 5.00% 37.03 1.00% 32.84 0% Min 32.84 Pour les statistiques descriptives de base: Basic Statistical Measures: moyenne, écart-type Quantiles: min, max, quartiles Extreme Observations Lowest Value Highest Obs Value Pour détecter des valeurs aberrantes ou à l’écart: Obs 32.84 28 53.31 13 Extreme Observation donne les 5 plus grandes et 33.86 35 56.34 48 les 5 plus petites valeurs ainsi que les numéros 37.03 27 57.87 2 37.18 16 58.57 41 37.85 39 60.41 30 des observations. Ici, l’observation 30 a l’âge le plus élevé: 60.41 STT1682 AUTOMNE 2011 ÉTAPES D’UNE ANALYSE DESCRIPTIVE 1. Déterminer les types de variables à analyser (continue, discrète,etc.) • R: typeof(variable) • SAS: PROC CONTENTS data=nom_table; run; 2. Pour les variables continues: (a) Calculer les statistiques descriptives de bases: min, max,quartiles, écart-type, nombre de valeurs manquantes. • • SAS : PROC MEANS avec NMISS OU PROC UNIVARIATE R • summary(table_donnees) va donner les statistiques de base les plus importantes pour toutes les types de variable: min, quartiles, max,moyenne, nombre de valeurs manquantes. (b) Représenter graphiquement à l’aide de nuages de points, d’histogrammes, de boxplot. (c) Vérifier s’il y a des valeurs aberrantes ou à l’écart. (d) Calculer la corrélation entre les variables. (e) Selon les hypothèses de l’analyse à faire (comme une régression), vérifier la normalité. 3. Pour les variables discrètes ou de catégories (a) Calculer les statistiques descriptives de base en formant des tableaux de contingence, i.e. des tableaux de fréquence (nombre d’observations par catégorie). Déterminer le nombre de valeurs manquantes. • SAS • • R PROC FREQ avec option /MISSING table(nom_table,useNA=c("always")) (b) représenter les distributions en faisant des diagrammes à bâton. • STT1682 AUTOMNE 2011 VÉRIFICATION DE LA NORMALITÉ À L’AIDE DE GRAPHIQUES Description du graphique QQ Plot (Graphique Quantile-Quantile) Montre les quantiles de la variable voulue selon les quantiles de la distribution Normale Code R: qqnorm(age) La variable suit une loi normale si le graphique montre une droite à pente positive Box Plot (Boîte à Moustache): montre minimum, Q1,Q2,Q3 et maximum Code R : boxplot(age) Une variable normale devrait montrer un boxplot symétrique. Histrogramme La variable suit une loi normale si le graphique montre une forme de cloche. Code R : hist(age) Représentation graphique STT1682 AUTOMNE 2011 CRÉER UN NUAGE DE POINTS EN R Syntaxe de base en R: plot(x,y,type=,main="titre du graphique",xlab="nom_axe_x",ylab="nom_axe_y") type= "p" : points, "l": lignes, "b": lignes et points, "c" for the lines part alone of "b", "o" for both ‘overplotted’, "h" histogramme, lignes verticales "s" escalier • • • • • • • • Exemple: xx=1:8; yy=xx^3-2 ; 0 0 100 100 200 200 yy yy 300 300 400 400 500 500 À gauche: plot(xx,yy,type="l"), à droite: plot(xx,yy,type="p") 1 2 3 4 5 xx 6 7 8 1 2 3 4 5 xx 6 7 8 STT1682 AUTOMNE 2011 CRÉER UN NUAGE DE POINTS EN SAS On utilise la procédure gplot: proc gplot data=exemple; plot salaire*age; run; quit; ÉTUDIER LA CORRÉLATION ENTRE LES VARIABLES •EN SAS • Procédure corr pour étudier la corrélation entre 2 variables • Permet de calculer plusieurs types de coefficients selon les options: par défaut, calcule le coefficient de Pearson • Dans var, on peut indiquer un grand nombre de variables et cela va donner la matrice de corrélation proc corr data=; var y x z; run; •EN R, on utilise la fonction cor(x,y). STT1682 AUTOMNE 2011 DIAGRAMMES À BÂTON SAS Les diagrammes à bâton ressemblent beaucoup aux histogrammes mais plutôt que de représenter les fréquences de chaque catégorie, cela sert à représenter des moyennes ou sommes de variables selon la variable de caractère voulue. Exemple: Une table comprend les variables age, sexe et montant gagné. Le diagramme à bâton permet, entres autres, de représenter l’âge moyen pour chaque sexe, les montants gagnés totaux pour chaque sexe. proc gchart data=exemple; hbar sexe/sumvar=age type=mean; run;quit; proc gchart data=exemple; hbar sexe/sumvar=salaire type=sum; run;quit; hbar: pour donner la variable sur l’axe des x (normalement une variable de catégorie) sumvar donne la variable numérique utilisée pour la hauteur des bâtons type: statistique utilisée pour la variable numérique (souvent la moyenne ou la somme) R Pour représenter le nombre d’observations pour chacune des catégorie de la variable: barplot(variable) Pour représenter graphiquement deux variables de catégorie, par exemple le nombre d’hommes et de femmes de chaque ville: barplot(table(sexe,ville)) STT1682 AUTOMNE 2011 COULEURS GRAPHIQUES EN R • Dans les commandes graphiques, l’option col=c() est un vecteur des couleurs voulues dans le graphique • On peut les écrire directement • col=c("lightblue","lightyellow","lightgreen") • On peut aussi créer nos couleurs selon les teintes de rouge, vert et bleu avec la fonction rgb • Exemple: rgb(red=1,green=0.7,blue=0) • Couleur donnera une teinte de magenta Rouge Vert Bleu Noir 0 % 0 % 0 % Blanc 100 % 100 % 100 % Gris même pourcentage pour R, V et B Rouge 100 % 0 % 0 % Jaune 100 % 100 % 0 % Vert 0 % 100 % 0 % Cyan 0 % 100 % 100 % Bleu 0 % 0 % 100 % 100 % 0 % 100 % Magenta source: www.pourpre.com