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