26

GOUTTE - Laboratoire de Probabilités, Statistique et ... · Laboratoire Analyse, Géométrie et Applications UMR 7539 ... ariableV numérique ... a che le compte-rendu de la bonne

  • Upload
    lamnga

  • View
    216

  • Download
    0

Embed Size (px)

Citation preview

Page 1: GOUTTE - Laboratoire de Probabilités, Statistique et ... · Laboratoire Analyse, Géométrie et Applications UMR 7539 ... ariableV numérique ... a che le compte-rendu de la bonne

LUISS,Libera UniversitàInternazionaledegli Studi Sociali

Université Paris 13Laboratoire Analyse,Géométrie et ApplicationsUMR 7539

GOUTTE

Analyse Statistique des Données

Master 2 EID

[email protected] Master 2 EID 07/08 1

Page 2: GOUTTE - Laboratoire de Probabilités, Statistique et ... · Laboratoire Analyse, Géométrie et Applications UMR 7539 ... ariableV numérique ... a che le compte-rendu de la bonne

September 12, 2007

Contents

1 Plan 41.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41.2 Importation et Manipulation des données . . . . . . . . . . . . . . . . . . . . 41.3 Procédures Statistiques Classiques . . . . . . . . . . . . . . . . . . . . . . . . 51.4 Les Analyses Factorielles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51.5 Les Classi�cations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61.6 Modélisation et Prédictions . . . . . . . . . . . . . . . . . . . . . . . . . . . 6

2 Introduction 72.1 Individus, population et variables . . . . . . . . . . . . . . . . . . . . . . . . 72.2 Les Statistiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7

2.2.1 Les statistiques descriptives . . . . . . . . . . . . . . . . . . . . . . . 82.2.2 La statistique exploratoire . . . . . . . . . . . . . . . . . . . . . . . . 82.2.3 La modélisation et la prédiction . . . . . . . . . . . . . . . . . . . . . 8

2.3 Représentation mathématique . . . . . . . . . . . . . . . . . . . . . . . . . . 9

3 Importation et Manipulation des données 93.1 Présentation de SAS . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93.2 Gestions des Données . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10

3.2.1 Création de librairies . . . . . . . . . . . . . . . . . . . . . . . . . . . 103.2.2 Importation de données . . . . . . . . . . . . . . . . . . . . . . . . . 103.2.3 Etapes Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113.2.4 Procédures SQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 143.2.5 Concaténations de tables . . . . . . . . . . . . . . . . . . . . . . . . . 153.2.6 Le tri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153.2.7 A�chage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 153.2.8 Graphique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 163.2.9 Opérateurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183.2.10 Les fonctions de base . . . . . . . . . . . . . . . . . . . . . . . . . . . 18

3.3 Statistiques Univariées . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203.3.1 Proc Means . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203.3.2 Proc Univariate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21

3.4 Statistiques Multivariées . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233.4.1 Proc Corr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

2

Page 3: GOUTTE - Laboratoire de Probabilités, Statistique et ... · Laboratoire Analyse, Géométrie et Applications UMR 7539 ... ariableV numérique ... a che le compte-rendu de la bonne

3.4.2 Proc Freq . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23

[email protected] Master 2 EID 07/08 3

Page 4: GOUTTE - Laboratoire de Probabilités, Statistique et ... · Laboratoire Analyse, Géométrie et Applications UMR 7539 ... ariableV numérique ... a che le compte-rendu de la bonne

1 Plan

L'objectif du cours n'est pas d'étudier les concepts théoriques de l'Analyse des données etde la Statistique mais :

• D'apprendre à exploiter l'information contenue dans les bases de données à l'aide desméthodologies statistiques

• D'apprendre à utiliser et à développer des programmes d�analyse de données avec unoutil : le logiciel SAS

Ce cours se déroulera donc selon le programme suivant:

• Introduction à SAS

• Importation et Manipulation des données

• Procédures Statistiques Classiques

• Les Analyses Factorielles

• Les Classi�cations

• Modélisation et Prédictions

1.1 Introduction

Nous verrons qu'un programme SAS est composé:

• D'une (ou des) étape(s) : DATA

• D'une (ou des) étape(s) : PROC

Les étapes DATA permettent la manipulation des tables et données : Création, recodage,concatenation � Les étapes PROC permettent le traitement statistiques des données : Cal-cul de statistique classique (moyenne, variance �), des analyses factorielles, et autres analysesstatistiques.

1.2 Importation et Manipulation des données

Nous verrons comment accéder aux données à travers les allocations : instructions LIB-NAME, FILENAME. Nous étudierons en autre:

• la création de tables SAS

• les formats : FORMAT, PROC FORMAT

• le recodage et transformation des données

[email protected] Master 2 EID 07/08 4

Page 5: GOUTTE - Laboratoire de Probabilités, Statistique et ... · Laboratoire Analyse, Géométrie et Applications UMR 7539 ... ariableV numérique ... a che le compte-rendu de la bonne

• la création de nouvelles variables dans une table

• les instructions de gestion des variables et des observations : KEEP, DROP, RETAIN,IF-THEN, etc ...

• la manipulation globale de tables SAS : SET, MERGE, BY, etc ...

1.3 Procédures Statistiques Classiques

Nous étudierons donc l'étape PROC. Exemples de procédures pour la gestion de tables:

• PROC SORT

• PROC PRINT

• PROC TRANSPOSE

Exemples de procédures statistiques:

• PROC FREQ

• PROC MEANS / PROC SUMMARY

• PROC CORR

• PROC CHART

• PROC PLOT

1.4 Les Analyses Factorielles

Nous étudierons les di�érents types d'analyses factorielles. Le choix du type dépendra desvariables à analyser.

• ACP : des variables quantitatives (Analyse en Composante Principale)

• AFC : deux variables qualitatives (Analyse Factorielle des Correspondances )

• ACM : plusieurs variables qualitatives (Analyse des Correspondances Multiples )

Le nom de ces procedures sous SAS sont:

• PROC FACTOR (ACP avec Rotation des axes)

• PROC PRINCOMP (Regression logistique linéaire methode maximum de vraisem-blance)

• PROC CORRESP (Analyse des correspondances simples et multiples)

[email protected] Master 2 EID 07/08 5

Page 6: GOUTTE - Laboratoire de Probabilités, Statistique et ... · Laboratoire Analyse, Géométrie et Applications UMR 7539 ... ariableV numérique ... a che le compte-rendu de la bonne

1.5 Les Classi�cations

Nous étudierons ensuite les di�érentes types de classi�cations (à ne pas confondre avecclassement). Nous étudierons aussi le lien entre les Classi�cations et les Analyses Factorielles.Voici des exemples de classi�cations:

• K-means (ou k-centres mobiles).

• CAH pour Classi�cation ascendante hierarchique.

Le nom de ces classi�cations sous SAS:

• PROC FASTCLUS (classi�cation disjointe selon la méthode des « moyennes K »)

• PROC CLUSTER (classi�cation hiérarchique)

• PROC VARCLUS (classi�cations hiérarchiques et disjointes)

• PROC TREE (dendogrammes) avec des données issues des procédures CLUSTER etVARCLUS)

1.6 Modélisation et Prédictions

Nous verrons les di�érents types de modélisation et de prédiction de variables. Nous verronsdonc les di�érents types de régressions (en fonction des variables utilisées):

• Régression linéaire

• Analyse de la variance

• Scoring

La régression avec SAS

• PROC REG (ajustement des moindres carrés pour un modèle linéaire et l'analyse dela régression)

• PROC GLM (analyse de la variance, de la covariance, des régressions simples et mul-tiples, des régressions pondérées)

• PROC LOGISTIC (régression logistique linéaire par la méthode du maximum de vrais-semblance)

[email protected] Master 2 EID 07/08 6

Page 7: GOUTTE - Laboratoire de Probabilités, Statistique et ... · Laboratoire Analyse, Géométrie et Applications UMR 7539 ... ariableV numérique ... a che le compte-rendu de la bonne

2 Introduction

2.1 Individus, population et variables

L'individu est l'unité de base sur laquelle on e�ectue un certain nombre de mesures. Onparle aussi d'observation.La population désigne l'ensemble des individus étudiés.Les variables sont des applications qui associent à chaque individu une valeur unique parmiun ensemble de valeurs possibles, appelées modalités de la variable. Il existe deux types devariable:

• Variable numérique (ou quantitative) : les modalités sont des nombres réels

� continue : des valeurs prises dans un intervalle de valeurs. Exemple : poids, prix,température

� discrète : des valeurs isolées, dans un ensemble de valeurs possibles. Exemple :nombre d'enfants d'une famille, nombre de pièces d'un logement

• Variable qualitative : ses modalités sont non numériques.

� ordinale : il existe une relation d'ordre. Exemple : niveau hiérarchique, niveaude satisfaction

� nominale : le cas contraire Exemple : sexe, profession

Il est important de bien savoir di�érencier le type de variables que l'on possède. En e�et,selon le type de variables, les statistiques possibles sont di�érentes, et la plupart des méth-odes statistiques requierent un type spéci�que de variables. Exemple: On ne peut e�ectuerde tableau de corrélations qu'entre des variables quantitatives.

2.2 Les Statistiques

Il existe plusieurs types de statistiques:

• Les statistiques descriptives: Décrire une variable ou deux variables

• Les statistiques exploratoires: Décrire un ensemble de variables (les analyses factoriellespar exemple)

• Les statistiques de modélisations et de prédictions: Construire des modèles de don-nées grâce à notre base a�n de mieux comprendre et prédire des évenements futurs.Exemple: les modèles de régression ou de scoring.

[email protected] Master 2 EID 07/08 7

Page 8: GOUTTE - Laboratoire de Probabilités, Statistique et ... · Laboratoire Analyse, Géométrie et Applications UMR 7539 ... ariableV numérique ... a che le compte-rendu de la bonne

2.2.1 Les statistiques descriptives

La statistique univariée : description des variables une par une:

• Calcul de moyennes, de variances, de min / max, de

• Représentations sous forme de tableaux

• Représentations graphiques.

La statistique bivariée : mesures de la liaison entre deux variables

• Tableaux de contingence

• Représentations graphiques

• Corrélations

2.2.2 La statistique exploratoire

La statistique multivariée : mesure des liaisons entre deux ou plusieurs variables. Lesméthodes utilisées sont les analyses factorielles

• Entre des variables numériques : Analyse en Composantes Principales (ACP)

• Entre deux variables qualitatives : Analyse Factorielle des Correspondances (AFC)

• Entre plusieurs variables qualitatives : Analyse des Correspondances Multiples (ACM)

Les classi�cations : regroupement des individus ayant des valeurs semblables sur plusieursvariables On parle aussi de typologies. Elles sont supervisées ou non-supervisées.

2.2.3 La modélisation et la prédiction

Ces méthodes permettent de créer des modèles : par exemple, prédire le taux de chômage enfonction de la croissance, de l'o�re de travail, de la population active, etc. Il existe plusieursmodèles de régression, selon les variables utilisées:

• Prédire une variable numérique par un ensemble de variables numériques : Régression(non)linéaire.

• Prédire une variable numérique par un ensemble de variables qualitatives : Analyse dela variance.

• Prédire une variable qualitative à l'aide d'un ensemble de variables numériques ouqualitatives :Regression logistic, Scoring.

[email protected] Master 2 EID 07/08 8

Page 9: GOUTTE - Laboratoire de Probabilités, Statistique et ... · Laboratoire Analyse, Géométrie et Applications UMR 7539 ... ariableV numérique ... a che le compte-rendu de la bonne

2.3 Représentation mathématique

On possède un tableau rectangulaire de mesure (comme une matrice) dont les colonnes sontdes variables (mensurations, taux, températures, ...) et dont les lignes représentent desindividus statistiques (unités élémentaires telles que des êtres humains, des pays, des années...). On note X ce tableau de données.X11 · · · · · · · · · X1p

... · · · Xij · · · ...Xn1 · · · · · · · · · Xnp

• X: Tableau de données

• Xij : Valeur de la ime observation pour la jime variable

• Xi. : ime observation du tableau

• X.j : jme variable du tableau

• n : E�ectif des individus

• p: Nombre de variables

3 Importation et Manipulation des données

3.1 Présentation de SAS

Le logiciel SAS, pour Statistical Analysis System, est comme son nom l'indique un logicield'analyses statistiques. SAS est, à l'origine, un logiciel de statistique polyvalent, c'est-à-diresusceptible de traiter pratiquement tous les domaines de la statistique. Aujourd'hui, SASest devenu un véritable système de gestion de l'information plutôt qu'un simple logiciel destatistique.Le système SAS est donc un ensemble de modules pour la gestion et le traitement statistiquedes données. Il permet l'écriture de programmes SAS qui exécutent :

• des saisies, importations, manipulations, transformations de données,

• des éditions de rapports, de graphiques basse ou haute résolution,

• des analyses statistiques, modélisation, prévision.

[email protected] Master 2 EID 07/08 9

Page 10: GOUTTE - Laboratoire de Probabilités, Statistique et ... · Laboratoire Analyse, Géométrie et Applications UMR 7539 ... ariableV numérique ... a che le compte-rendu de la bonne

Un programme SAS est un enchaînement d'étapes de gestion des données (ce sont les étapesData) et d'appels de procédures, qui décrivent les traitements à réaliser (ce sont les étapesProc). Les di�érentes étapes ou procédures communiquent entre elles par l'intermédiaire detables SAS, permanentes ou temporaires.Au lancement de SAS, quatres fenêtres apparaissent. Ces fenêtres sont :

• OUTPUT : a�che tous les résultats produits par l'exécution des di�érentes procédures.Les graphiques apparaissent dans des fenêtres spéci�ques.

• LOG : a�che le compte-rendu de la bonne exécution et les messages d'erreur.

• PROGRAM EDITOR : est un éditeur de texte où l'on entre et modi�e les programmesSAS avant d'en demander l'exécution.

• EXPLORER : est un explorateur de �chier permettant d'acceder à vos librairie detables SAS.

3.2 Gestions des Données

3.2.1 Création de librairies

Pour commencer nous devons dé�nir une librairie. Ces librairies permettent de stocker destables SAS de manière permanente. Les données peuvent alors être traitées sur plusieurssessions. Pour créer une librairie nommée libref dans un répertoire existant, on utilisel'instruction :

libname libref "repertoire" ;

Exemple:

libname TP1 "c:/SAS/TP1" ;

Algorithme 1: Création de librairie

3.2.2 Importation de données

Le logiciel SAS permet d'importer quasiment tout type de �chiers de données :

• �chiers textes

• �chiers excel

• base de données SQL

• ...

[email protected] Master 2 EID 07/08 10

Page 11: GOUTTE - Laboratoire de Probabilités, Statistique et ... · Laboratoire Analyse, Géométrie et Applications UMR 7539 ... ariableV numérique ... a che le compte-rendu de la bonne

Il permet aussi d'importer n'importe quel type d'extention de �chiers du moments que l'on luidé�nit les délimitateurs du �chier (séparateurs des données, des lignes, ... ). Pour importerun �chier il faut aller dans:

FICHIER -> IMPORTER -> ...

.SAS comprend le langage PL-SQL. Il faut juste ouvrir la procédure SQL par la com-

mande proc sql; et faire quit; à la �n du code SQL. Ceci a�n de fermer la fenetre SQL.

3.2.3 Etapes Data

Une étape Data inclut implicitement une boucle considérant chacune des observations. Ainsi,chaque instruction de l'étape Data est exécutée pour chaque observation. La syntaxe généraled'une étape data de transformation de données est la suivante :

data <libref.>nom_table_sortie ;set libref.nom_table_entrée ;instructions ;run;

Algorithme 2: Etape Data

Chaque observation de la table_entrée est lue, transformée par l'exécution des instruc-tions, puis enregistrée dans la table_sortie. Toutes les variables de la table_entrée sontrecopiées dans la table_sortie, avec celles éventuellement créées par les instructions, maisil est possible d'en écarter certaines (instruction drop) ou de n'en conserver que certaines(instruction keep).

data notexam2 (drop=maths chimie) ;set notexam1 ;::data notexam2 ;set notexam1 (keep=maths phys) ;

Algorithme 3: Instruction DROP et KEEP

On peut évidement utiliser les instructions drop | keep variables dans une étape data ouset.

[email protected] Master 2 EID 07/08 11

Page 12: GOUTTE - Laboratoire de Probabilités, Statistique et ... · Laboratoire Analyse, Géométrie et Applications UMR 7539 ... ariableV numérique ... a che le compte-rendu de la bonne

En SAS, il existe évidement toutes les syntaxes de boucles et conditions habituelles (IF-THEN-ELSE, DO-WHILE, ...). Voici la syntaxe pour IF:

IF <condition1>THEN <instruction1>;ELSE <instruction2>;

Algorithme 4: Instruction IF-THEN-ELSE

La condition peut tester:

• le contenu d'une variable par rapport à une constante

• le contenu d'une variable par rapport au contenu d'une variable

• le contenu d'une variable par rapport au résultat d'un calcul

• le contenu d'une variable par rapport à un ensemble de valeurs

• le résultat d'une fonction SAS

• une expression logique

Voici quelques exemples:

IF a="1";IF a < b;IF numa = numb + numc;IF dep IN("04" "05" "76");IF dep NOT IN("75" "91" "92");IF SUBSTR(depcom,3,3)="007";IF (a=1) AND (b=5);

Algorithme 5: Conditions IF

Voici le code pour l'instruction DO:

[email protected] Master 2 EID 07/08 12

Page 13: GOUTTE - Laboratoire de Probabilités, Statistique et ... · Laboratoire Analyse, Géométrie et Applications UMR 7539 ... ariableV numérique ... a che le compte-rendu de la bonne

DO var=valdeb TO val�n <BY pas>;instruction1 ;......instructionN;END;

Algorithme 6: Instruction DO

Nous pouvons alors créer ou modi�er des variables:

data result.notexam2 ; /* Création d'une nouvelle variable */set result.noteexam ;newvar=(maths+phys)/2 ;run ;:data result.notexam2 ; /* Codage d'une variable */set result.noteexam ;if maths>16 then niveau='très bon' ;else if maths >14 then niveau='bon' ;else if maths >10 then niveau='correct' ;else niveau='mauvais' ;run ;:data result.notexam2 ; /* Suppression d'observations */set result.noteexam ;if maths<10 then delete ; /* SAS passe à la ligne suivante */run ;:data result.notexam2 ; /* Sélection d'observations */set result.noteexam ;if maths>10 ; /* SAS passe à la ligne suivante */. . .run ;

Algorithme 7: Création et modi�cation de variables

Nous pouvons aussi renommer des variables:

[email protected] Master 2 EID 07/08 13

Page 14: GOUTTE - Laboratoire de Probabilités, Statistique et ... · Laboratoire Analyse, Géométrie et Applications UMR 7539 ... ariableV numérique ... a che le compte-rendu de la bonne

data <libref.>nom_table_sortie ;set libref.nom_table_entrée ;RENAME anc_n1=nouv_n1 anc_n2=nouv_n2 ... ;run;

Algorithme 8: Etape Data

L'instruction RENAME peut être placer n'importe où dans l'étape DATA.

• RENAME peut être option de la table en lecture, elle se place derrière celle-ciex: SET table (RENAME=(anc_n1=nouv_n1 ...)) ;

• RENAME peut être option de la table en création, elle se place derrière celle-ciex: DATA table (RENAME=(anc_n1=nouv_n1 ...));

• RENAME permet de renommer dans la table en création des variables de la tablesource. Ces variables doivent exister dans la table en entrée ou être créées dans l�étapeDATA

3.2.4 Procédures SQL

SAS accepte les commandes SQL pour la création, édition de table et/ou de variables.

PROC SQL;"Syntaxe SQL" ;RUN ;

Algorithme 9: Etape SQL

On peut ainsi utiliser les commandes:

• Alter, create table

• Delete, drop, insert, update ...

• On peut aussi utliser les requetes: Select * from * where * ;

Exemple de création de table SAS:Proc sql;Create table "nom de la table" as "result requet";OuCreate table "nom de la table" like "nom de la table 2";ou

[email protected] Master 2 EID 07/08 14

Page 15: GOUTTE - Laboratoire de Probabilités, Statistique et ... · Laboratoire Analyse, Géométrie et Applications UMR 7539 ... ariableV numérique ... a che le compte-rendu de la bonne

Create table "nom de la table" ( def-col1 , def-col2);

Exemple:Create table sql.statlab as select sexenf, gsenffrom sasuser.statlab2where (cons>1);

3.2.5 Concaténations de tables

FusionSi on dispose d'observations de variables di�érentes sur les mêmes individus, on peut créerune table SAS contenant toutes les variables pour ces individus.

data tablech ; /* première méthode */set table1 ;set table2 ;run ;

data tablech ; /* deuxième méthode */merge table1 table2 ;by vardetri ; /* instruction optionelle, permettant de trierles lignes de tablech*/run ;

Algorithme 10: Concaténation horizontale

3.2.6 Le tri

La procédure "proc sort" permet de trier une table SAS selon les valeurs d'une variable detri. Sa syntaxe est :

proc sort data=table_a_trier <out=table_de_sortie> ;by var_de_tri1 <descending> <var_de_tri2 ...> ;run ;

Algorithme 11: Tri

3.2.7 A�chage

La procédure "proc print" permet d'a�cher une table. Sa syntaxe est :

[email protected] Master 2 EID 07/08 15

Page 16: GOUTTE - Laboratoire de Probabilités, Statistique et ... · Laboratoire Analyse, Géométrie et Applications UMR 7539 ... ariableV numérique ... a che le compte-rendu de la bonne

proc print data=table_a_a�cher;run ;

Algorithme 12: A�chage

3.2.8 Graphique

Il est evidement possible d'e�ectuer tout les types de graphiques classiques:

• Courbe

• Histogramme

• Secteurs

• Nuages de points

• ...

Voici quelques exemples:

proc plot data=Donnees;plot maths*e�ectif;run;

Algorithme 13: Tracer Courbe

Proc gchart data=Donnees;vbar maths;run;

Algorithme 14: Tracer Histogramme

Par défaut, le graphique représente le nombre d'observations dans chaque classe. Il estpossible de représenter la statistique (somme ou moyenne) d'une variable annexe calculéepour chacune des classes. L'exemple suivant représente la moyenne du poids par classed'indice de masse corporel.

[email protected] Master 2 EID 07/08 16

Page 17: GOUTTE - Laboratoire de Probabilités, Statistique et ... · Laboratoire Analyse, Géométrie et Applications UMR 7539 ... ariableV numérique ... a che le compte-rendu de la bonne

Proc gchart data=imc;vbar imc / sumvar=poid type=mean ;run;

Algorithme 15: Histogramme Statistique

Par ailleurs, on peut subdiviser les barres de l'histogramme en fonction des valeurs d'unevariable discrète annexe. L'exemple suivant représente la distribution de la variable IMC enattribuant une couleur di�érente aux hommes et aux femmes.

Proc gchart data=imc;vbar imc / subgroup=sexe;run ;

Algorithme 16: Histogramme Sous groupe

Il ne faut pas confondre l'option SUBGROUP avec l'option GROUP. L'option SUB-GROUP se contente de subdiviser l'histogramme alors que l'option GROUP disjoint lesdi�érentes catégories dé�nies par la variable de groupe.

Proc gchart data=imc;vbar imc / group=sexe;run ;

Algorithme 17: Histogramme Sous groupe

Graphique en Secteur

Proc gchart data=imc;pie sante;run ;

Algorithme 18: Graphique en Secteur

NB : Pour dé�nir l'apparence des parts d'un camembert (ou des barres d'un histogramme),on utilise l'instruction PATTERN. L'exemple suivant redé�nit les couleurs des trois pre-mières parts (ou barres) utilisées.

[email protected] Master 2 EID 07/08 17

Page 18: GOUTTE - Laboratoire de Probabilités, Statistique et ... · Laboratoire Analyse, Géométrie et Applications UMR 7539 ... ariableV numérique ... a che le compte-rendu de la bonne

PATTERN1 C=GREEN;PATTERN2 C=BLUE;PATTERN3 C=VIOLET;

Algorithme 19: Pattern

3.2.9 Opérateurs

Sous SAS les opérateurs sont:Les opérateurs arithmétiques

• + - / *

• >< : min

• <> : max

Les opérateurs de comparaisons

• = ou EQ

• �= ou NE

• > ou GT

• < ou LT

• >= ou GE

• <= ou LE

• IN

Les opérateurs logiques ou booléens

• AND, OR et NOT

3.2.10 Les fonctions de base

Voici une liste de fonction de base utile pour la modi�cation et la création de variables:

• Logarithme népérien : LOG(<nombre>)

• Exponentiel : EXP(<nombre>)

• Puissance : **<nombre>

• Racine carrée : SQRT(<nombre>)

[email protected] Master 2 EID 07/08 18

Page 19: GOUTTE - Laboratoire de Probabilités, Statistique et ... · Laboratoire Analyse, Géométrie et Applications UMR 7539 ... ariableV numérique ... a che le compte-rendu de la bonne

• Valeur absolue : ABS(<nombre>)

• Partie entière : INT(<nombre>)

• Arrondi : ROUND(<nombre>,<unités d�arrondi>)

• Longueur d�une chaîne de caractères : LENGTH(<chaîne de caractères>)

• Mise en majuscule : UPCASE(<chaîne de caractères>)

• Mise en minuscule : LOWCASE(<chaîne de caractères>)

• Extrait d'une chaîne de caractères : SUBSTR(<chaîne de caractères>,<début del'extraction>,<nombre de caractères>)

[email protected] Master 2 EID 07/08 19

Page 20: GOUTTE - Laboratoire de Probabilités, Statistique et ... · Laboratoire Analyse, Géométrie et Applications UMR 7539 ... ariableV numérique ... a che le compte-rendu de la bonne

3.3 Statistiques Univariées

On attend par statistique univariée, les statistiques e�ectué sur une seule variable (moyenne,écart-type, quantiles, ...).

3.3.1 Proc Means

La procédure means permet d'obtenir des statistiques descriptives univariées sur des variablesquantitatives, soit sur une table entière, soit sur des sous-groupes d'observations de cettetable. Elle peut être utilisée avec ou sans options.Utilisée sans mots-clés, la procédure means permet d'obtenir par défaut les statistiquessuivantes (entre parenthèses les mots-clés à utiliser pour obtenir ces statistiques en utilisantles options) :

• la taille de l'échantillon (n)

• la moyenne arithmétique (mean)

• l'écart-type (std)

• les valeurs minimale (min) et maximale (max)

Les mots clés suivants permettent d'obtenir d'autres statistiques :

• nmiss indique le nombre d'observations qui ont des valeurs manquantes,

• sum la somme

• uss la somme des carrés

• var la variance

• stderr l'écart-type de la moyenne

• skewness le coe�cient d'asymétrie

• kurtosis le coe�cient d'aplatissement

La syntaxe de la procédure means est la suivante :

proc means data=table <mots_clés> ;var variables ;by <variables> ;class <variables> ;output <out=nom_table_SAS><liste_de_statistiques> ;run ;

Algorithme 20: Procédure Means

[email protected] Master 2 EID 07/08 20

Page 21: GOUTTE - Laboratoire de Probabilités, Statistique et ... · Laboratoire Analyse, Géométrie et Applications UMR 7539 ... ariableV numérique ... a che le compte-rendu de la bonne

L'instruction by permet de trier la table SAS en entrée en distinguant des sous-groupesde l'ensemble des observations, déterminés par les modalités des variables spéci�ées. La tableen entrée doit obligatoirement avoir été triée selon les variables spéci�ées.L'instruction class spéci�e les variables utilisées pour dé�nir des sous-groupes. les variablesspéci�ées possèdent en principe un petit nombre de modalités distinctes. L'instruction classa un e�et analogue à l'instruction by sur les statistiques calculées. Les di�érences apparais-sent au niveau des sorties, et dans le fait qu'il n'est pas nécessaire de trier la table SAS selonles variables de l'instruction class. Notons que l'instruction by permet de réaliser des étudessur des tables plus grandes, la gestion de la mémoire étant plus économique.L'instruction output permet de créer une table SAS contenant un certain nombre de statis-tiques.Exemple d'utilisation:

proc means data=result.noteexam ;by mention ;var maths chimie ;output out=sortie2 mean=moy_math moy_chim std=ect_math ect_chim ;run ;

Algorithme 21: Exemple Means

La statistique demandée est calculée pour toutes les variables de l'instruction var de latable result.noteexam. Les résultats seront classés par mention. Les résultats seront stockésdans la table temporaire sortie2 et les variables auront pour noms, les noms listés après lesigne =.

3.3.2 Proc Univariate

Les résultats fournis par cette procédure incluent ceux produits par means. Elle s'utilise dela même façon mais en di�ère par la présentation des résultats, un peu moins lisibles qu'avecmeans. Elle fournit, en plus des résultats précédemment cités, des détails sur les valeursextrêmes, des quantiles, des diagrammes (diagrammes en boîte, diagramme tige-et-feuille),des tests, des tables de fréquence.

La syntaxe de la procédure univariate est la suivante :

[email protected] Master 2 EID 07/08 21

Page 22: GOUTTE - Laboratoire de Probabilités, Statistique et ... · Laboratoire Analyse, Géométrie et Applications UMR 7539 ... ariableV numérique ... a che le compte-rendu de la bonne

proc univariate <options> ;var variables ;by <variables> ;output <out=nom_table_SAS><liste_de_statistiques> ;run ;

Algorithme 22: Procédure Univariate

L'option habituelle data=nom_table_SAS indique à la procédure la table à étudier.L'option noprint supprime toute édition. En plus des résultats obtenus par défaut, il estpossible de demander un test de normalité de la distribution des variables (option normal)et des diagrammes en feuilles (stem and leaf ), en boîte (Box-plot) et d'ajustement à une loinormale (Normal probability plot ) (option plot).var donne la liste des variables pour lesquelles sont calculées toutes les statistiques. Par dé-faut, les calculs sont faits sur l'ensemble des variables numériques de la table SAS en entrée.L'instruction output permet de créer une table SAS contenant un certain nombre de statis-tiques. Il est possible de créer plusieurs tables en utilisant plusieurs instructions out-put. Si on utilise l'instruction output, il faut utiliser l'instruction var également. La<liste_de_statistiques> contient les statistiques que l'on veut stocker dans la tablecréée. Un mot-clé est suivi du signe =, puis des noms des variables sous lesquels serontstockées ces statistiques. Le premier nom de variable correspond à la première variable del'instruction var, le deuxième nom à la deuxième variable...Pour faire appel aux statistiques, on peut utiliser les mêmes mots-clés que ceux cités pour laprocédure means, et les mots-clés supplémentaires suivants : p1, p5, p10, p90, p95, p95(respectivement premier, cinquième, dixième, quatrevingt- dixième... centiles), t (statistiquet de Student qui permet de tester l'hypothèse de nullité de la moyenne), probt (niveau designi�cation du test de Student), normal (statistique du test de normalité)...

[email protected] Master 2 EID 07/08 22

Page 23: GOUTTE - Laboratoire de Probabilités, Statistique et ... · Laboratoire Analyse, Géométrie et Applications UMR 7539 ... ariableV numérique ... a che le compte-rendu de la bonne

3.4 Statistiques Multivariées

On attend par liaison multivariée, toute procédure mathématique, statistique e�ectuée entreplusieurs variables qualitatives ou quantitatives.

3.4.1 Proc Corr

La procédure corr étudie les liaisons entre variables quantitatives et propose des coe�cientsde corrélation. La syntaxe de la procédure corr est la suivante :

proc corr <options>;var variables ;by <variables> ;run ;

Algorithme 23: Procédure Corr

Les instructions var et with permettent de spéci�er les variables entre lesquelles onsouhaite calculer un coe�cient de corrélation. Voici quelques exemples:

• var A B C ; Ceci calcule les corrélations entre A et B, A et C, B et C. Le résultat estdonc une marice symétrique de taille 3 par 3.

• var A B ; with X Y Z ; Ceci calcule les corrélations suivantes : (A,X),(A,Y),(A,Z),(B,X),(B,Y)et (B,Z)

3.4.2 Proc Freq

La procédure freq étudie les liaisons entre variables qualitatives. Ceci au moyen de table decontingence. La procédure FREQ permet donc de construire des tableaux représentant lesdistributions statistiques d'une variable ou de plusieurs variables. La syntaxe générale est lasuivante:

PROC FREQ DATA=table;BY variables;TABLES tableaux </ options>;WEIGHT variable;RUN;;

Algorithme 24: Procédure Freq

L'instruction BY permet de traiter la table en entrée en distinguant des sous-groupes del�ensemble des observations. La table en entrée doit être obligatoirement triée selon cette

[email protected] Master 2 EID 07/08 23

Page 24: GOUTTE - Laboratoire de Probabilités, Statistique et ... · Laboratoire Analyse, Géométrie et Applications UMR 7539 ... ariableV numérique ... a che le compte-rendu de la bonne

variable au préalable.L'instruction TABLES dé�nit les variables qui seront étudiées.

• TABLES var1 var2 </options> : variables étudiées séparément

• TABLES var1*var2 </options> : croisement à deux dimensions. Var1 est en ligne etvar2 est en colonne

• TABLES var1*var2*var3 </options> : croisement à trois dimensions. Une modalitéde var1 par page, var2 en ligne et var3 en colonne

L'instruction WEIGHT permet de pondérer les observations.La procédure FREQ édite 5 colonnes:

• Modalités de la variable

• Population de la modalité

• Pourcentage de la population de la modalité

• Population cumulée

• Pourcentage cumulé

Chaque cellule du tableau comporte par défaut 4 données

• La population du croisement

• Le pourcentage sur la population totale

• Le pourcentage sur la population de la modalité ligne

• Le pourcentage sur la population de la modalité colonne

Les principales options de la procédure Freq sont:

• NOFREQ : supprime l'a�chage des e�ectifs

• NOROW : supprime l'a�chage des pourcentages en ligne

• NOCOL : supprime l'a�chage des pourcentages en colonne

• NOPERCENT : supprime l'a�chage de tous les pourcentages

• NOCUM : supprime l'a�chage des e�ectifs et des pourcentages cumulés

• NOPRINT : supprime tout les a�chages

• LIST : édite les croisements sous forme de liste (i.e. tout en ligne)

• OUT=table : crée un table en sortie

• MISSING : prend en compte les valeurs manquantes

[email protected] Master 2 EID 07/08 24

Page 25: GOUTTE - Laboratoire de Probabilités, Statistique et ... · Laboratoire Analyse, Géométrie et Applications UMR 7539 ... ariableV numérique ... a che le compte-rendu de la bonne

Une option statistique très importante de la procédure Freq est l'option CHISQEn e�et cette option permet de calculer la valeur du Khi2 d'une variable sur une autre. Orplus cette valeur est élevée plus la signi�cativité de la variable sur la deuxième est élevée(ceci évidement si la probabilité du test reste en dessous de 5%).Exemple: Nous voulons connaitre parmi les variables suivantes : Age, Sexe et Zone géo-graphique, celle qui a le plus "d'impact", donc de signi�cativité sur la catégorie socio-profésionnelle (CSP) de l'individu. Pour cela nous réalisons une procédure Freq entre cesvariables et demandons de calculer le test du Khi2.

PROC FREQ DATA=SourceEco;TABLES (Age Sexe Zone)*CSP /CHISQ OUT=table_sortie;RUN;

Algorithme 25: Procédure Freq

Cette procedure freq croise donc les variables Age, Sexe et Zone, avec la variable "CSP",sauvegarde dans la table: table_sortie les données issus de la procédures ainsi que du Testdu Khi2. Imaginons que nous obtenions les résultats suivants pour le test du Khi2:

Nom Variable Probabilité du test Valeur du Khi2.Age <0.001 23.2Sexe 0.0234 157.5Zone 0.4278 485

La variable la plus signi�cative serait donc la variable Zone, or la valeur de la probabilitépour cette variable est nettement supérieur à 5% donc le test n'est pas "acceptable". Nousne pouvons comparer que les variables Age et Sexe. Et parmis ces deux variables, celle quiexplique le mieux le CSP est la variable Sexe.

[email protected] Master 2 EID 07/08 25

Page 26: GOUTTE - Laboratoire de Probabilités, Statistique et ... · Laboratoire Analyse, Géométrie et Applications UMR 7539 ... ariableV numérique ... a che le compte-rendu de la bonne

Liste des Algorithmes

1 Création de librairie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102 Etape Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113 Instruction DROP et KEEP . . . . . . . . . . . . . . . . . . . . . . . . . . . 114 Instruction IF-THEN-ELSE . . . . . . . . . . . . . . . . . . . . . . . . . . . 125 Conditions IF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 126 Instruction DO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137 Création et modi�cation de variables . . . . . . . . . . . . . . . . . . . . . . 138 Etape Data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 149 Etape SQL . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1410 Concaténation horizontale . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1511 Tri . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1512 A�chage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1613 Tracer Courbe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1614 Tracer Histogramme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1615 Histogramme Statistique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1716 Histogramme Sous groupe . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1717 Histogramme Sous groupe . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1718 Graphique en Secteur . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1719 Pattern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1820 Procédure Means . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2021 Exemple Means . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2122 Procédure Univariate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2223 Procédure Corr . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2324 Procédure Freq . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2325 Procédure Freq . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

[email protected] Master 2 EID 07/08 26