Guide SAS - Université de Moncton

Transcription

Guide SAS - Université de Moncton
Introduction au système SAS
Progiciel de traitement statistique des données
École de psychologie
Université de Moncton
Septembre 2013
Table des matières
Avant-propos ............................................................................................................................... 4
Chapitre 1 - Présentation ............................................................................................................. 6
1.1
Introduction .................................................................................................................. 6
1.1.1
Table SAS .............................................................................................................. 6
1.1.2
Programme SAS .................................................................................................... 7
1.1.2.1
L'étape « data » ................................................................................................ 7
1.1.2.2
Les étapes de procédures ................................................................................ 7
1.1.2.3
Le vocabulaire SAS .......................................................................................... 7
1.1.3
1.2
Environnement ....................................................................................................... 7
1.1.3.1
La fenêtre éditeur (editor) ................................................................................. 8
1.1.3.2
La fenêtre Journal (Log) ................................................................................... 9
1.1.3.3
La fenêtre Sortie (Output) ................................................................................. 9
1.1.3.4
Les onglets Résultats/Explorateur (Results/Explorer) ........................................ 9
Étude fictive ............................................................................................................... 10
Chapitre 2 - Lecture des données et définition des variables ...................................................... 13
2.1
Lecture des données.................................................................................................. 13
2.1.1
Saisie de données directement dans SAS ............................................................ 13
2.1.2
Données importées d’un fichier externe (L’importation et l’exportation de fichiers). 14
2.1.2.1
Importer des données ..................................................................................... 15
2.1.2.2
Exporter des données ..................................................................................... 17
2.1.2.3
L’importation par la méthode INFILE ............................................................... 17
2.1.3
Deux modes de lecture des données : mode libre et mode fixe ............................. 17
2.1.4
Saisie d’une matrice de corrélations ..................................................................... 18
2.2
Fusionner des données .............................................................................................. 19
2.3
Transformations de variables ..................................................................................... 19
2.3.1
Les étiquettes ....................................................................................................... 20
2.3.2
Fonctions mathématiques (arithmétiques et statistiques) ...................................... 20
2.3.3
Fonctions logiques (énoncés IF…THEN) .............................................................. 21
2.3.3.1
Changer les valeurs d’une variable ................................................................. 21
2.3.3.2
Créer une nouvelle variable à partir d’une variable existante ........................... 21
2.4
2.3.3.3
Inverser des données ..................................................................................... 22
2.3.3.4
Appliquer une fonction mathématique selon une condition logique .................. 23
Techniques avancées de programmation ................................................................... 23
2.4.1
Boucles « DO...TO...END » .................................................................................. 23
2.4.2
La fonction RANNOR(.) ........................................................................................ 23
2.4.3
La fonction RAND(dist) ......................................................................................... 24
2.4.4
L’option ARRAY ................................................................................................... 24
Chapitre 3 - Procédures SAS..................................................................................................... 26
3.1
Introduction à la programmation de procédures SAS .................................................. 26
3.1.1
3.2
Les options de procédure ..................................................................................... 27
Trois procédures de gestion des données .................................................................. 28
3.2.1
L’énoncé PROC PRINT ........................................................................................ 28
3.2.2
L’énoncé PROC PLOT ........................................................................................... 29
3.2.3
L’énoncé PROC STANDARD ................................................................................. 30
3.2.4
L’énoncé PROC SORT .......................................................................................... 31
3.3
Présentation graphique des données ............................................................................ 33
3.3.1
L’énoncé PROC CHART ........................................................................................ 33
3.3.2
L’énoncé PROC GCHART ..................................................................................... 34
3.4
Deux procédures de statistiques descriptives ................................................................ 34
3.4.1
L’énoncé PROC MEANS ........................................................................................ 35
3.4.2
L’énoncé PROC UNIVARIATE ............................................................................... 35
3.4.3
L’énoncé PROC POWER ....................................................................................... 35
3.5
Trois procédures de statistiques inductives ................................................................... 37
3.5.1
L’énoncé PROC TTEST ......................................................................................... 37
3.5.2
L’énoncé PROC CORR .......................................................................................... 38
3.5.3
L’énoncé PROC FREQ ......................................................................................... 39
3.6
Les analyses multivariées ............................................................................................. 41
3.6.1
La régression multiple ............................................................................................ 41
3.6.2
La corrélation canonique ........................................................................................ 43
3.6.3
L’analyse factorielle exploratoire ............................................................................ 44
3.6.4
La modélisation structurale ..................................................................................... 48
Avant-propos
Quiconque souhaite utiliser le système SAS pour l’analyse statistique de données dans
un contexte pédagogique se heurte rapidement à la rareté de documents d’accompagnement qui
présentent une introduction non trop technique aux rudiments nécessaires à une utilisation
appropriée en sciences humaines et sociales. C’est cette situation qui a motivé le développement
du présent guide. Ce document est conçu pour accompagner une introduction non technique à
l’utilisation de SAS dans des situations statistiques typiques de la psychologie, et en particulier du
contenu des cours pour lesquels il a été mis au point : psychométrie et techniques multivariées1.
Ce guide, qui n’est qu’un document d’accompagnement de cours, ne peut se suffire à lui-même.
Ce n’est pas non plus un manuel de référence, et on doit tout de suite se familiariser avec la
documentation SAS2 afin d’acquérir une certaine autonomie et de pouvoir adapter les exemples
donnés à la diversité des situations particulières.
Ce guide doit beaucoup à un autre du même type élaboré par H. Ivers, C. Fortin et
S. Fiset3. Il est aussi beaucoup le fait des étudiants inscrits au cours PSYC6200 – Méthodes
quantitatives avancées à l’hiver 2005 à l’École de psychologie de l’Université de Moncton, qui ont
été les témoins actifs de ses premiers développements. Il reste cependant un document en
chantier pour lequel les suggestions de mises à jour, d’ajouts et d’améliorations restent les
bienvenues.
La présente version, développée à l’été 2006, a en outre été rendue possible en partie
grâce à une participation du Fonds d’initiatives pédagogiques du Service d’animation et de
soutien à l’enseignement de l’Université de Moncton.
F.V.
_________________________
1 À l’École de psychologie de l’Université de Moncton, il s’agit essentiellement des cours
PSYC4220 –
Théories psychométriques, PSYC6200 – Méthodes quantitatives avancées et PSYC7200 – Statistiques
multivariées.
2 Voir la bibliographie sommaire en fin de document.
3 Introduction à l’analyse informatisée de données et à l’utilisation du progiciel SAS sous UNIX (Piaget)
(3e rév.). École de psychologie, Université Laval, Québec, 1998.
Chapitre 1 - Présentation
1.1 Introduction
Le progiciel SAS est un ensemble de modules logiciels de gestion et de traitement
statistique des données. Voici quelques exemples d’analyses statistiques pouvant être effectuées
à l’aide du progiciel SAS :
Analyses descriptives
Moyennes, variances et écarts types
Mode et étendue
Asymétrie (skewness) et voussure (« kurtose »)
Analyses inductives univariées
Corrélation (Bravais-Pearson, Spearman) et association (khi-deux)
Test t (pour échantillons appariés ou indépendants)
Analyse de variance (ANOVA)
Régression simple
Analyse de séries chronologiques
Analyses inductives multivariées
Analyse de variance multivariée (MANOVA)
Régression multiple (standard, hiérarchique)
Corrélation canonique
Analyse discriminante
Analyse de regroupement (« cluster »)
Analyse factorielle (composantes principales, facteurs communs)
Analyses d’équations structurales (analyse factorielle confirmatoire, analyse des
pistes causales)
Ce bref guide a pour objectif de présenter les éléments essentiels à la réalisation
d’analyses statistiques de données par l’entremise du logiciel SAS (version 9.2 et précédentes, et
utilisé dans un environnement Windows) en mode programmation. Seules les procédures et les
fonctions de base seront abordées ici. De nombreux ouvrages détaillés, ainsi que les divers
éléments de documentation SAS (dont on trouvera certaines références en fin de document)
peuvent être consultés pour plus de détails.
1.1.1
Table SAS
Les données soumises à l’analyse statistique prennent la forme d’un fichier de données.
On peut saisir les données dans un fichier à même le progiciel SAS grâce à l’une de ses
fonctions (un « éditeur ») ; SAS peut également importer des données en provenance d’autres
applications. Il faut bien distinguer fichier de données et table SAS (un « data set »). Un fichier de
données est celui qui comprend les données recueillies qu’on souhaite analyser. Une table SAS
est un fichier de données virtuel défini à partir des données du fichier de données. Dans SAS, les
analyses portent toujours sur les données telles que définies dans la table SAS.
Chapitre 1 – Présentation
1.1.2
Programme SAS
Le Progiciel SAS a son propre langage. Le langage SAS est un système de codes et de
symboles particuliers qui servent à la création de programmes. Un programme SAS est un
enchaînement d’étapes de lecture et de gestion des données (« data step ») et d’appels de
procédures (« procedure ») décrivant les traitements (statistiques entre autres) à réaliser. Ce sont
ces deux aspects d’un programme SAS : lecture et gestion des données et traitements sur ces
données, qui seront traités, respectivement, aux chapitres 2 et 3 de ce guide.
1.1.2.1 L'étape « data »
L'étape data sert à la manipulation des données. Elle permet de créer des variables,
supprimer des variables et supprimer des observations. Il est possible de faire des analyses dans
l’étape Data, mais seulement des analyses par sujets. Par exemple, faire la moyenne d’une série
de questions pour chaque sujet ou additionner les scores aux questions d’un test pour obtenir un
score total par sujet. Dans l’étape Data, l’ordre dans lequel les opérations sont écrites est
primordial. Par exemple, dans le cas où l’on apporte des modifications aux valeurs de certaines
variables, les commandes définissant ces modifications doivent survenir avant les commandes
de calculs sur les variables modifiées. Si les commandes de calculs sont présentées les
premières, ils seront effectués sur les variables avant modification.
1.1.2.2 Les étapes de procédures
Les analyses axées sur les variables se font aux étapes de procédures. Par exemple, faire la
moyenne de l’âge de tous les sujets de l’échantillon. Les étapes de procédures commencent
toujours par la commande PROC.
1.1.2.3 Le vocabulaire SAS
Énoncé (« statement ») : est une phrase inscrite dans l’éditeur qui se termine par un pointvirgule.
Commande (« keyword ») : est un mot clé reconnu par SAS qui permet à l’utilisateur de
communiquer avec le logiciel.
Fonction (« function ») : est une expression arithmétique usuelle. On retrouve la plupart des
fonctions dans l’étape Data. Voir la liste de fonction page 19.
Opérateurs de base : sont les signes utilisés pour effectuer des opérations mathématiques
habituelles (+, - , =, / , *, <, >, etc.).
Commentaires : peuvent être insérés dans un programme ; les commentaires sont placés entre
astérisques (*).
Énoncé de procédure : est la commande PROC suivie d’une procédure d’analyse SAS. Les
énoncés de procédures importantes aux fins de ce guide sont listés à la page 25.
Options : Les options SAS sont des commandes reconnues par SAS qui spécifient les types
d’analyse à effectuer ou qui modifient l’affichage des résultats.
-
1.1.3
Options de l’étape data : s’applique à la table de données SAS
Options de procédure : s’applique à l’énoncé de procédure correspondante. Il
existe aussi des options de procédure de deuxième niveau. Ceux-ci permettent de
modifier l’affichage des résultats dans la fenêtre sortie.
Environnement
7
Chapitre 1 – Présentation
La navigation dans l’environnement SAS et les opérations sur les contenus des fenêtres
respectent pour l’essentiel les conventions de tout environnement de type Windows (options
comprises dans des barres de menus qui s’appliquent à une fenêtre activée, etc.).
L’environnement SAS se compose de plusieurs fenêtres.
Parmi ces fenêtres, les principales sont :
ÉDITEUR
(Editor)
Pour créer, modifier et soumettre les analyses. On peut aussi y saisir,
visionner et modifier les données. Le contenu de cette fenêtre est
entièrement géré par l’utilisateur.
JOURNAL
(Log)
Lieu d’affichage des commandes soumises ainsi que des messages
générés par SAS. Le contenu de cette fenêtre est généré par SAS à la
suite d’une demande d’analyse dans la fenêtre Éditeur.
SORTIE
(Output)
Affichage des résultats des analyses statistiques. Le contenu de cette
fenêtre est généré par SAS à la suite d’une demande d’analyse dans la
fenêtre Éditeur.
1.1.3.1 La fenêtre éditeur (editor)
C’est dans la fenêtre Éditeur qu’on prépare le programme SAS. Ce programme peut y
être créé, chargé, copié, modifié. On peut aussi y saisir, visionner et modifier des données. Pour
produire des analyses, un programme SAS doit figurer à la fenêtre Éditeur, et ce programme doit
être exécuté. On soumet un programme SAS à l’exécution en choisissant l’option Submit du
menu Run. On peut aussi, plus simplement, cliquer sur l’icône appropriée de la barre d’outils :
8
Chapitre 1 – Présentation
Notons qu’il est possible de ne soumettre qu’une partie d’un programme SAS. Il suffit alors de
surligner la partie du programme à soumettre : seules les commandes sélectionnées seront alors
soumises à SAS pour exécution.
***ATTENTION***
Le programme rédigé dans la fenêtre Éditeur doit respecter certaines conventions de
programmation spécifiques à SAS. Plusieurs de ces conventions seront présentées aux chapitres
2 et 3. Précisons cependant dès maintenant que chaque énoncé SAS se termine par un
point-virgule ( ; ).
1.1.3.2 La fenêtre Journal (Log)
La fenêtre Journal (Log) est le lieu d’affichage des commandes soumises ainsi que des
messages générés par SAS. Le contenu de cette fenêtre est généré par SAS à la suite d’une
demande d’analyse dans la fenêtre Éditeur. Les messages renvoyés sont de 3 types :
Note (Note ; en bleu): le traitement de la demande a été effectué sans aucun problème.
Avertissement (Warning ; en vert): il est possible qu’une erreur ait eu lieu pendant le
traitement. Bien que ce message n’interrompe pas le traitement en cours, il importe d’en
tenir compte puisqu’il arrive souvent que ces erreurs correspondent à la génération par
SAS de données manquantes (ce qui n’est pas toujours souhaité par l’utilisateur).
Erreur (Error ; en rouge) : erreur grave de traitement qui a pour effet de mettre fin
entièrement l’étape en cours.
La fenêtre Journal rapporte donc les éventuelles erreurs de syntaxe détectées par SAS
dans les programmes qui lui sont soumis dans la fenêtre Éditeur. Comme SAS procède à
la lecture de l’ensemble du programme soumis même après avoir détecté une erreur, le
Journal peut rapporter plusieurs erreurs qui résultent toutes d’une même erreur initiale.
Par ailleurs, les messages d’erreur produits n’indiquent pas toujours la nature exacte de
l’erreur. Lorsqu’une erreur est détectée dans une procédure, cette dernière n’est pas
exécutée.
Donc, si on soumet un énoncé et que rien n’apparaît dans la fenêtre Sortie, c’est qu’il y a
une erreur dans l’énoncé ou en amont dans le programme. On peut alors recourir à
l’information générée dans le Journal afin d’identifier cette erreur pour enfin la corriger
dans le programme (fenêtre Éditeur).
1.1.3.3 La fenêtre Sortie (Output)
C’est dans la fenêtre Sortie que s’affichent les résultats des analyses statistiques
exécutées à partir de la fenêtre Éditeur. Le formatage de cet affichage peut être contrôlé en
partie à l’aide de commandes spéciales du programme SAS (voir la section 2.1.1)
1.1.3.4 Les onglets Résultats/Explorateur (Results/Explorer)
9
Chapitre 1 – Présentation
Ces onglets se trouvent sur le côté gauche de l’écran dès l’ouverture du logiciel SAS. Les
onglets Résultats/Explorateur sont utilisés pour naviguer les banques de données (explorateur) et
les différents résultats de procédures (résultats). Seulement l’une des deux fenêtres peut être
utilisée à la fois. Il est possible de passer d’un onglet à l’autre à l’aide de la tabulation au bas de
la fenêtre.
La fenêtre Explorateur affiche quatre dossiers: « Bibliothèque», « Raccourcis de
fichiers », « Dossiers favoris » et « Ordinateur ». De ces dossiers, c’est la bibliothèque qui nous
intéresse. Ce dossier contient 4 sous-sections : « Maps », « Sashelp », « Sasuser » et « Work »,
dont celle qui nous intéresse est « Work ». Cette section contient les documents créés par
l’utilisateur lorsqu’il travaille dans SAS. Les tables de données sauvegardées dans Work sont
temporaires, c’est-à-dire qu’elles sont seulement disponibles lors d’une même session de travail
dans SAS. Pour enregistrer une table de donnée en permanence, il faut la sauvegarder dans son
compte étudiant « P : » ou sur une clé USB. Les tables de données dans le dossier SASUSER
sont sauvegardées en permanence pourvu qu’elles soient ouvertes sur le même ordinateur. Les
fichiers dans SASUSER sur un ordinateur public sont effacés lorsque l’ordinateur subit ses mises
à jour.
La fenêtre résultat permet de naviguer à travers les nombreux résultats de procédure
créés lors d’une même session SAS.
1.2 Étude fictive
Dans ce guide, les procédures et les fonctions seront démontrées à l’aide d’illustrations
tirées d’un même exemple. Les données de cet exemple proviennent d’une étude fictive portant
sur la performance de sujets à une épreuve d’attention et sur la perception qu’ils ont de cette
performance. Ces données sont contenues dans deux fichiers, bio.txt et psycho.txt, l’un
contenant les données biométriques de 60 sujets tandis que l’autre contient les données
psychométriques de 58 de ces mêmes sujets (les données psychométriques ne sont pas
disponibles pour les sujets numéro 3 et 4). Les variables comprises dans cette étude sont
présentées au tableau 1.1, et les données figurent aux tableaux 1.2 et 1.3.
Tableau 1.1 Liste des variables
Premier fichier (données biométriques)
Variable
Sujet
Genre
Age
Poids
Taille
Note
Numéro de sujet, identifiant numérique unique à chaque
individu de l’échantillon
Masculin (M) ou féminin (F)
En années
En kilogrammes
En centimètres
Second fichier (données psychométriques)
Variable
Sujet
Vitesse
Erreurs
Q1 à Q6
Estimation
Note
Numéro de sujet, identifiant numérique unique à chaque
individu de l’échantillon
Nombre d’items complétés
Nombre d’erreurs commises
Estimation personnelle de la performance au test (sur une
échelle de 1 à 4 ; les questions Q3 et Q6 sont inversées)
Estimation personnelle de la performance au test (total
des questions Q1 à Q6)
10
Chapitre 1 – Présentation
Tableau 1.2 Données biométriques
Sujet
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
Genre
2
2
2
1
2
2
1
1
2
1
1
1
2
1
1
2
1
1
2
2
2
2
1
1
1
1
1
1
1
2
2
2
2
1
1
2
1
2
2
2
1
1
1
1
2
2
2
2
2
1
1
1
2
1
2
1
1
2
2
2
Age
18
20
50
21
32
228
23
18
18
20
24
19
40
33
21
42
24
18
19
18
20
30
21
32
19
26
30
21
18
29
19
22
31
23
20
27
56
21
31
24
45
19
21
44
22
30
26
20
20
33
30
50
19
22
72
19
45
30
19
22
11
Poids (kg)
50
65
68
85
57
78
70
75
52
80
95
80
68
80
70
52
82
72
54
73
66
57
65
67
70
71
67
75
72
70
57
59
60
80
64
56
71
61
60
51
63
57
64
71
58
53
60
56
55
63
71
75
58
80
70
74
81
66
56
63
Taille
157
165
172
187
156
170
170
185
150
180
190
195
189
186
177
161
184
187
159
171
168
164
174
181
176
172
172
190
185
172
168
162
170
188
179
166
175
179
165
162
171
169
170
176
165
160
171
160
161
162
171
177
165
192
162
187
180
170
164
168
Chapitre 1 – Présentation
Tableau 1.3 Données psychométriques
Observation
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
Sujet
1
2
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
Vitesse
177
166
162
170
173
164
163
167
168
163
161
174
171
155
170
158
165
167
172
168
170
169
167
169
176
167
176
177
170
166
168
165
169
184
168
167
162
179
153
173
170
173
175
161
168
172
174
160
164
181
171
174
164
169
168
171
169
165
erreurs
6
22
26
10
12
22
26
22
24
21
30
13
18
26
19
27
19
25
12
19
16
20
15
21
10
18
14
17
21
20
19
20
22
5
16
12
23
11
29
20
14
12
21
26
20
11
10
24
21
10
15
20
25
13
21
11
22
23
Q1
1
3
2
3
2
2
1
1
3
3
2
2
3
2
3
3
2
2
3
2
3
1
2
3
3
3
3
2
3
3
2
3
3
1
3
2
2
1
1
3
1
3
3
3
1
1
3
2
3
3
1
1
2
1
3
3
1
2
Q2
3
4
4
2
2
2
1
3
2
4
1
3
4
2
2
4
2
4
1
3
2
4
4
1
4
4
1
2
4
1
2
2
4
1
4
1
4
4
3
4
2
3
4
1
4
1
2
4
3
4
4
1
3
1
1
1
1
2
12
Q3
4
2
3
2
1
2
4
4
1
2
3
3
2
3
2
1
3
3
1
3
2
4
3
1
1
2
1
3
1
2
3
2
2
4
1
3
3
4
4
1
4
1
2
2
4
4
1
3
1
1
4
4
3
4
2
1
4
3
Q4
2
4
4
3
3
3
1
3
3
4
1
2
4
3
3
4
3
4
1
2
3
4
4
1
4
4
1
3
4
1
3
3
4
1
4
1
4
4
2
4
3
2
4
1
4
1
3
4
2
4
4
1
2
1
1
1
1
3
Q5
1
3
2
2
4
2
1
1
4
2
3
3
2
3
2
4
3
3
4
3
2
1
3
4
4
2
4
3
4
2
3
2
2
1
4
3
3
1
1
4
1
4
2
2
1
1
4
3
4
4
1
1
3
1
3
4
1
2
Q6
2
1
1
3
3
3
4
3
3
1
4
2
1
3
3
1
3
1
4
2
3
1
1
4
1
1
4
3
1
4
3
3
1
4
1
4
1
1
2
1
3
2
1
4
4
4
3
1
2
1
1
4
2
4
4
4
4
3
Estim
11
21
18
15
17
14
6
11
18
20
10
15
20
14
15
23
14
19
14
15
15
15
19
14
23
20
14
14
23
11
14
15
20
6
23
10
19
15
11
23
10
19
20
11
12
6
18
19
19
23
15
6
15
6
12
14
6
13
Chapitre 2 - Lecture des données et
définition des variables
2
2.1 Lecture des données
Pour être analysées à l’aide d’un logiciel informatique, les données doivent être saisies et
organisées à l’intérieur d’un fichier. Il est alors utile de suivre certains principes généraux :
-
Typiquement, un fichier de données est constitué de rangées et de colonnes où les
rangées correspondent à des sujets et les colonnes à des variables.
-
Les données peuvent être de nature numérique (des chiffres) ou alphabétique (des
lettres). Cependant, certaines analyses ne pouvant être appliquées à des données
alphanumériques, il est souvent plus commode de remplacer les données
alphabétiques (comme M et F pour le sexe) par des données numériques (par
exemple : 1 et 2, respectivement).
-
Les données manquantes peuvent être indiquées simplement par un point.
La saisie de données peut se faire de différentes façons. Les données peuvent être
entrées dans un fichier de traitement de texte (Word), dans un logiciel bloc-note (WordPad), dans
un tableur (Excel), dans SPSS ou être entrées directement dans SAS.
2.1.1
Saisie de données directement dans SAS
L’énoncé DATA permet la création d’une table SAS dans lequel l’énoncé INPUT spécifie
le nom des différentes variables. L’énoncé INPUT contient les instructions nécessaires pour
identifier précisément les valeurs affectées à chaque variable dans le fichier de données. De
façon générale, l’étape DATA se termine par l’instruction RUN. (Dans l’image ci-dessous, seule la
fenêtre Éditeur a été reproduite.)
Une fois cette étape terminée, vous pouvez sauvegarder votre travail (option Enregistrer
sous dans le menu Fichier ; ici, on a donné à ce fichier programme le nom Bio).
Chapitre 2 – Lecture des données et définition des variables
Reprenons dans le détail chacun des énoncés de ce court programme :
OPTIONS LINESIZE = 80 PAGESIZE = 60 PAGENO = 1 NOLABEL;
L’énoncé OPTIONS permet de formater l’affichage de la sortie informatique. Dans le présent
exemple, l’énoncé fait en sorte que la sortie se fait sur 80 colonnes (LINESIZE = 80), que
chaque page comprend 60 lignes de texte (PAGESIZE = 60) et que la pagination de chaque
sortie débute à 1 (PAGENO = 1). L’option NOLABEL permet d’omettre les étiquettes de variable
des fichiers externes (sans spécifier l’option NOLABEL, la sortie affiche parfois deux étiquettes
par variables : l’étiquette SAS et l’étiquette du fichier externe).
DATA BIO;
L’énoncé DATA identifie la table SAS qui sera créée à la suite de la lecture des données.
Cet énoncé est essentiel puisque c’est à partir des noms de variables que peuvent être
effectuées les diverses procédures statistiques SAS.
Le nom donné ici (« BIO ») est arbitraire et peut être remplacé par n’importe quel nom
pourvu qu’il respecte une longueur maximum de huit caractères et débute par une lettre.
Dans des procédures ultérieures, ce nom permettra d’identifier la table où se trouvent les
variables à analyser.
INPUT;
L’énoncé INPUT spécifie le nom à donner à chacune des variables, le type de variable
dont il s’agit (de type numérique ou alphanumérique) et la position de la variable dans le
fichier de données. Comme les noms des tables, les noms de variables doivent respecter
une longueur maximum de huit caractères et débuter par une lettre. L’utilisation d’un
suffixe numérique facilite la manipulation de séries de variables apparentées (par
exemple, on pourra nommer les variables correspondant aux items d’un questionnaire :
ITEM01, ITEM02, ITEM03, etc.). Le tableau 2.1 présente certaines spécifications
pouvant être insérées dans l’énoncé INPUT.
CARDS;
L’énoncé CARDS indique que les informations qui le suivent sont des données.
Typiquement, ces données sont présentées de telle sorte que chaque ligne corresponde
à un sujet et chaque colonne à une variable. Ces colonnes sont séparées par un ou
plusieurs espaces.
Lorsqu’on procède à la saisie de données dans la fenêtre Éditeur de SAS, le fond d’écran
de la section correspondante passe au jaune : c’est l’indication que le logiciel reconnaît
qu’il s’agit de données. On indique la fin des données à l’aide d’un point-virgule inséré
sur la ligne suivant la dernière ligne de données.
RUN;
L’énoncé RUN indique la fin de l’énoncé DATA. Il est possible de créer plusieurs énoncés
DATA à l’intérieur d’un même programme d’analyse.
2.1.2
Données importées d’un fichier externe (L’importation et l’exportation de fichiers)
Dans le cas précédant, les données lues par le progiciel SAS ont été saisies directement
dans la fenêtre Éditeur. Il est également possible d’importer des données contenues dans un
fichier externe.
14
Chapitre 2 – Lecture des données et définition des variables
2.1.2.1 Importer des données
Pour importer des données d’un autre logiciel (ex : Excel, SPSS, etc.), il faut d’abord sélectionner
« Importer données… » dans le menu déroulant « Fichier ».
La fenêtre qui apparait permet de choisir le type de fichier à importer. Choisissez ce type à partir
du menu déroulant et appuyez sur Suivant
En appuyant sur suivant, une nouvelle fenêtre apparait. Ici, on vous demande de repérer le fichier
que vous souhaitez importer. * À noter que dans Excel, les virgules doivent être remplacées par
des points avant l’importation pour que SAS puissent lire ces données.
15
Chapitre 2 – Lecture des données et définition des variables
En appuyant sur suivant à nouveau, une troisième fenêtre apparaît. Cette fenêtre permet de
choisir dans quel dossier SAS vous voulez sauver votre fichier de données. Le dossier par défaut
est WORK, mais rappelez-vous que les fichiers sauvés dans ce dossier sont temporaires. Il est
donc habituellement préférable de sélectionner le dossier SASUSER. Une quatrième fenêtre
apparait, mais pour les fins de ce guide elle ne sera pas expliquée. Il suffit d’appuyer sur terminer
lorsque cette fenêtre apparaît et votre fichier de données externe est importé dans SAS.
Une fois votre fichier dans SASUSER, vous devez spécifier à SAS que vos données proviennent
de ce dossier. Les énoncés INPUT et CARDS deviennent alors inutiles. Le nom attribué dans
l’énoncé après SASUSER, dans cet exemple Bio, est arbitraire, mais doit correspondre à celui
donné au fichier de données lors de l’étape de l’enregistrement des données importées dans
SASUSER.
16
Chapitre 2 – Lecture des données et définition des variables
2.1.2.2 Exporter des données
En sélectionnant « exporter des données » dans le menu « Fichier », il est possible d’exporter
une table de donnée SAS dans un dossier externe. La procédure est similaire à l’importation. Il
faut d’abord repérer la table de donnée SAS. Ensuite il faut sélectionner dans quel type de
programme les données seront exportées pour enfin le sauvegarder ce fichier dans un fichier
externe.
2.1.2.3 L’importation par la méthode INFILE
Il est également possible de lire des données contenues dans un fichier externe grâce à l’énoncé
INFILE
INFILE;
L’énoncé INFILE permet à SAS d’identifier un fichier de données externe où les
données sont stockées. Un fichier externe peut provenir de Word, Excel ou Notepad. Le
nom du fichier et son endroit sur le disque dur doit toujours être inscrit entre guillemets
(“).
Pour trouver facilement et rapidement l’emplacement exact dans l’ordinateur d’un fichier
de données externe, il suffit de cliquer sur l’icône du fichier désiré avec le bouton droit de
la souris et de choisir l’option « créer un raccourci ». Une nouvelle icône apparaît alors
avec comme mention « raccourci vers [titre du ficher] ». Recliquez avec le bouton droit de
la souris sur cette nouvelle icône et choisissez l’option « Propriétés ». Une nouvelle
fenêtre s’ouvre. Vous trouverez alors une ligne avec le mot « Cible », copiez cette ligne ;
il s’agit de l’endroit exact du fichier dans l’ordinateur. Par exemple, un fichier situé sur le
bureau de l’ordinateur aura comme « Cible » l’allure suivante : "C:\Documents and
Settings\lab\Bureau\Bio.docx". Il vous suffit alors de coller cet énoncé dans l’Éditeur SAS
à l’endroit désiré.
Il faut bien distinguer fichier de données (un « data file », ici : bio.txt, un fichier texte
enregistré sur le disque c:\) et table de données SAS (un « data set », ici : « bio » tel
que défini dans l’énoncé DATA). Un fichier de données est celui qui comprend les
données recueillies qu’on souhaite analyser, tandis qu’une table SAS est un fichier de
données virtuel défini à partir des données du fichier de données. Dans SAS, les
analyses portent toujours sur les données telles que définies dans la table SAS.
L’option MISSOVER est nécessaire pour la lecture et l’identification d’éventuelles données
manquantes dans le fichier de données.
Note : L’utilisation de données provenant d’un fichier externe à l’aide de l’énoncé INFILE
rend inutile l’expression CARDS.
2.1.3
Deux modes de lecture des données : mode libre et mode fixe
17
Chapitre 2 – Lecture des données et définition des variables
Qu’il s’agisse de données intégrées au programme ou provenant d’un fichier externe,
divers types de lecture permettent d’exploiter divers types de format de données. Il existe
deux modes de lecture des données : le mode fixe et le mode libre.
Le mode libre peut être utilisé lorsque, dans le fichier de données, les observations représentant
des variables différentes sont séparées par au moins un espace, comme dans l’exemple de
saisie initial (données « bio » incluses directement au programme SAS ; section 2.1.1). Le mode
libre consiste donc à nommer les variables dans l’énoncé INPUT mais sans avoir à indiquer leur
emplacement précisément.
Dans le mode fixe, la position de chaque observation dans le fichier de données est
précisée, comme dans l’exemple INFILE ci-dessus (section 2.1.2). Comme l’illustre cet exemple,
l’utilisation du mode fixe de lecture des données demande à ce que l’emplacement des
observations soit indiqué précisément. Un ensemble de commandes de pointeurs permettent de
préciser ces indications et de les simplifier. Le tableau 2.1 ci-dessous en dresse une liste
sommaire.
Tableau 2.1 – Quelques conventions de programmation de l’énoncé INPUT en mode fixe
Convention
Position
Devant un
nom de
variable
@
devant un
numéro de
ligne
#
Rôle
Exemple
Pointeur colonne
INPUT @ 11 AGE
indique que la variable age
débute à la 11e colonne
Pointeur ligne
(dans les cas où le fichier
de données comprend plus
d’une ligne par sujet)
# 2 ITEM02 4-8
indique que les données
correspondant à la variable
item02 se situent aux colonnes
4 à 8 de la 2e ligne pour chacun
des sujets dans le fichier
Les conventions suivantes peuvent par ailleurs être utilisées avec l’un ou l’autre des modes de
lecture de l’énoncé INPUT :
Convention
$
.1
(.2, .3, etc.)
2.1.4
Position
Rôle
Exemple
derrière un
nom de
variable
Indicateur alphanumérique
INPUT GENRE $
indique que la variable genre est
alphanumérique
derrière un
nom de
variable
Indicateur de décimales
(dans les cas où elles ne
sont pas spécifiées dans le
fichier de données)
INPUT SCORE .1
indique que les données lues
doivent être comprises avec une
décimale
Saisie d’une matrice de corrélations
La plupart des utilisations consistent à analyser un fichier de données brutes. La flexibilité offerte
par la programmation permet cependant d’analyser des données présentées sous d’autres
formes (matrices de corrélation, matrices de variances-covariances).
18
Chapitre 2 – Lecture des données et définition des variables
L’énoncé data suivant permet de lire une matrice d’intercorrélations de quatre variables (item01,
item02, item03 et item04) calculée chez un échantillon de 250 sujets :
2.2 Fusionner des données
Il est parfois utile de fusionner les données provenant d’ensembles de données distincts,
comme par exemple lorsque l’on souhaite combiner les données de mêmes individus recueillies
par des équipes de recherche différentes. Une telle fusion peut être réalisée à l’intérieur d’un
énoncé DATA à l’aide de la commande MERGE.
La commande MERGE appliquée à l’exemple permet de créer une table (« biopsy ») qui
comprend à la fois les données biométriques provenant d’un fichier de données externe
bio.txt et les données psychométriques du fichier psycho.txt. La procédure SORT utilisée
dans cet exemple est une procédure de tri nécessaire à l’appariement des données à partir des
numéros de sujets. Cette procédure sera présentée dans une section ultérieure.
2.3 Transformations de variables
Les énoncés de lecture des données constituent la première partie de l’énoncé DATA en
créant des variables. À la suite de l’énoncé INPUT, il est possible de modifier ces variables ou
d’en créer d’autres qui en seront des dérivés. Le nombre de variables qu’on peut créer grâce à
19
Chapitre 2 – Lecture des données et définition des variables
l’énoncé DATA est pratiquement illimité. Les fonctions qui suivent ne sont que quelques
possibilités de transformations ; pour plus de détails, consulter la documentation SAS.
2.3.1
Les étiquettes
Le progiciel SAS limite le nom des variables à huit caractères. La commande LABEL
permet à l’utilisateur d’étiqueter les variables avec des noms qui dépassent la limite de
huit caractères. Ces étiquettes apparaissent dans la Sortie. Cependant, si l’option
NOLABEL est déjà inscrit dans les options de base SAS, les étiquettes n’apparaitront pas
dans la Sortie. Voici un exemple d’étiquettes créées à partir de la commande LABEL.
2.3.2
Fonctions mathématiques (arithmétiques et statistiques)
Diverses fonctions arithmétiques et fonctions statistiques sont disponibles afin de créer
ou modifier des variables. Quelques exemples sont présentés dans la figure ci-dessous :
Les variables var01, var02, var03 et var04 illustrent les opérations de base d’addition
(+), de soustraction (-), de multiplication (*) et de division (/). Afin de respecter l’ordre de priorité
des opérations, il est préférable d’utiliser les parenthèses pour clarifier certains calculs plus
complexes (comme dans le cas de la variable var02). Notons que les nouvelles variables créées
grâce aux fonctions et opérateurs SAS doivent respecter les limites de l’énoncé DATA (noms
d’une longueur maximum de huit caractères débutant par une lettre, etc.).
Les variables var03 et var04 illustrent l’utilisation de fonctions arithmétiques (ici, la
somme) et statistiques (ici, la moyenne) de base sur un ensemble de variables. Notons pour la
variable var03 l’utilisation des suffixes numériques qui permet de citer les six variables q1, q2,
q3, q4, q5 et q6 de façon simplifiée. Un aperçu des différentes fonctions disponibles est
présenté au tableau 2.2 ci-dessous. À noter que ces fonctions permettent une analyse
arithmétique et statistique par sujet et non par variable (ex : sum (of q1-q6) donne la somme des
variables q1 à q6 pour chaque sujet).
Tableau 2.2 – Quelques fonctions arithmétiques et statistiques de l’énoncé DATA
Fonctions arithmétiques
MIN
MAX
valeur minimum
valeur maximum
20
Chapitre 2 – Lecture des données et définition des variables
MOD
SQRT
**2
ABS
mode des données
racine carrée
puissance 2
valeur absolue
Fonctions statistiques
MEAN
VAR
STD
SUM
N
NMISS
RANGE
2.3.3
moyenne des variables
variance des observations
écart type des variables
somme des variables
nombre d’observations
nombre d’observations manquantes
étendue des observations
Fonctions logiques (énoncés IF…THEN)
Il est parfois utile d’appliquer certaines conditions logiques afin de sélectionner ou de
modifier des variables. La programmation d’une règle logique IF… THEN permet d’appliquer une
condition logique sans avoir à modifier une à une toutes les observations d’un fichier de données.
La figure suivante présente un exemple de programmation d’une règle logique IF… THEN pour
appliquer une condition simple (retirer des analyses les sujets âgés de plus de 30 ans).
La ligne de programmation if age > 30 then delete a pour effet de retirer de la
table « bio » les sujets de plus de 30 ans. Notons que ces sujets ne sont pas effacés du fichier
de données (bio.txt), mais simplement retirés de la table virtuelle définie par l’énoncé DATA.
L’énoncé IF… THEN peut être utilisé de diverses façons dans la création ou la modification de
variables. Voici quelques exemples et notez qu’on vous recommande d’insérer les deux
premières fonctions dans votre éditeur.
2.3.3.1 Changer les valeurs d’une variable
Dans le fichier de données biographiques, on note un âge égal à 228 pour le sujet
numéro 10. Il s’agit d’une erreur qu’il est difficile de corriger, à moins d’avoir accès à
l’information en question. On peut alors vouloir transformer cette valeur extrême en
donnée manquante :
IF AGE = 228 THEN AGE = . ;
Dans SAS, le point indique une donnée manquante.
Notons que cette transformation modifie la table (celle qu’on analyse) sans altérer le
fichier de données initial (celui dans lequel on a saisi les valeurs).
2.3.3.2 Créer une nouvelle variable à partir d’une variable existante
21
Chapitre 2 – Lecture des données et définition des variables
La variable âge est une variable continue qu’on souhaite traiter, dans certaines analyses,
comme variable catégorielle. On peut créer une nouvelle variable (groupe) à partir des
valeurs de la variable âge :
IF AGE < 20 THEN GROUPE = 1 ;
IF 20 =< AGE < 30 THEN GROUPE = 2 ;
IF AGE => 30 THEN GROUPE = 3 ;
Ou encore :
IF AGE < 20 THEN GROUPE = 1 ;
IF 20 =< AGE < 30 THEN GROUPE = 2 ;
ELSE GROUPE = 3 ;
Voici un exemple de l’éditeur:
2.3.3.3 Inverser des données
Dans le fichier « psycho » , les variables q3 et q6 sont des questions avec un sens
négatif. Il faut donc inverser les réponses inscrites pour chaque sujet afin de calculer un
score total (ex : si le sujet a inscrit 1 à la question q3 cette valeur doit être changée à 4).
Deux façons simples peuvent être utilisées pour inverser les scores obtenus. D’abord, il
est possible d’utiliser la méthode IF…THEN:
DATA PSYCHO;
SET SASUSER.PSYCHO;
IF
IF
IF
IF
q3
q3
q3
q3
=
=
=
=
1
2
3
4
THEN
THEN
THEN
THEN
q3s
q3s
q3s
q3s
=
=
=
=
4;
3;
2;
1;
IF
IF
IF
IF
q6
q6
q6
q6
=
=
=
=
1
2
3
4
THEN
THEN
THEN
THEN
q6s
q6s
q6s
q6s
=
=
=
=
4;
3;
2;
1;
RUN;
Il est aussi possible de faire l’inversion par soustraction.
DATA PSYCHO;
SET SASUSER.PSYCHO;
q3s = 5-q3
q6s = 5-q6
RUN;
22
Chapitre 2 – Lecture des données et définition des variables
L’option ELSE
Lorsqu’on commande l’inversion de données par recouvrement de valeurs existantes, par
exemple, IF x=1 THEN x=2; IF x=2 THEN x=1;, SAS ne fait que transformer
toutes les données en la dernière valeur inscrite. Dans ce cas, toutes les valeurs de x =
1. En ajoutant l’option ELSE à partir de la deuxième ligne de la commande IF-THEN
l’inversion par recouvrement est possible.
IF x=1 THEN x=2;
ELSE IF x=2 THEN x=1;
2.3.3.4 Appliquer une fonction mathématique selon une condition logique
On souhaite appliquer une correction (diminution de 20 %) aux scores obtenus au
questionnaire d’estimation de la performance, mais seulement aux sujets du groupe 1 qui
ont obtenu un score supérieur à 10.
IF GROUPE = 1 AND ESTIM > 10 THEN ESTIM = ESTIM*0.8 ;
Si les deux conditions sont rencontrées, le score au questionnaire est multiplié par 0,8,
soit 80 % de sa valeur initiale, ce qui correspond à une diminution de 20 %. Pour les
sujets des autres groupes, la valeur de la variable estim demeure inchangée.
L’ensemble des fonctions mathématiques peut être utilisé dans les fonctions logiques.
2.4 Techniques avancées de programmation
2.4.1
Boucles « DO...TO...END »
Les options DO…TO…END dans l’étape data permettent d’exécuter une boucle répétitive. La
commande DO commence la boucle et la commande END finie la boucle. Dans l’exemple
suivant, pour 20 observations, SAS génère une variable « x » qui augmente de deux pour chaque
observation. L’option « output » rend visibles les données créées par cette boucle dans le dossier
« Work ».
DATA EXEMPLE;
X=0 ;
DO i = 1 TO 20 ;
X+2 ;
OUTPUT;
END;
RUN;
2.4.2
La fonction RANNOR(.)
La fonction RANNOR(.) permet de générer des nombres aléatoires en suivant une loi normale
centrée réduite. Le nombre inscrit entre parenthèses sert de point de départ pour la génération
de nombres aléatoires. Dans l’exemple suivant, un nombre aléatoire « x » a été assigné à
chaque sujet du fichier biopsy.
DATA BIOPSY ;
SET SASUSER.BIOPSY ;
X = RANNOR(1) ;
RUN;
23
Chapitre 2 – Lecture des données et définition des variables
Il est même possible d’insérer la fonction RANNOR dans une Boucle DO…TO…END. L’exemple
ci-dessous génère des données aléatoires centrées réduites x et y pour 100 échantillons de 100
observations.
DATA EXEMPLE ;
DO SAMPLE = 1 TO 100 ;
DO N = 1 TO 100 ;
X = 0+SQRT(1)*RANNOR(0) ;
Y = 0+SQRT(1)*RANNOR(0) ;
OUTPUT;
END;
END;
2.4.3
La fonction RAND(dist)
La fonction RAND(dist) permet de générer des nombres aléatoires en spécifiant une
distribution quelconque. Vingt distributions peuvent être spécifier parmi lesquelles on retrouve
NORMAL, POISSON, EXPONENTIAL et UNIFORM. Ex : X = RAND(POISSON).
2.4.4
L’option ARRAY
L’option Array est utilisée dans l’étape Data. Cette option permet la transformation de données.
Par exemple, modifier les valeurs d’une variable et vérifier l’existence de données manquantes
sur un grand nombre de sujets sont quelques-unes des manipulations possibles de l’option Array.
Modification des valeurs d’une variable
ARRAY nom du array {nombre d’éléments à traiter} noms des éléments ;
DO i = position des éléments à traiter dans la suite { } ;
IF nom du array{i} = 2 THEN nom du array {i} = 1 ;
IF nom du array{i} = 4 THEN noms du array {i} = 3 ;
END
DROP i ;
Dans l’exemple suivant, « quest » est le nom du ARRAY. Ce nom doit être différent pour
chaque ARRAY. Le nombre entre parenthèses (6) est le nombre d’éléments traités par
ARRAY. La commande « q1-q6 » est le nom de ces six éléments, c’est-à-dire q1, q2, q3,
q4, q5, q6. Les valeurs suivant la commande « do i = » sont les positions des éléments à
traiter. Comme à la section 2.2.2, on applique la fonction IF…THEN. Celle-ci s’applique à tous les
éléments spécifiés par ARRAY. Enfin, la commande « DROP i » élimine la variable « i »
d’apparaitre dans le tableau de données. Cette variable ne sert qu’au traitement de la fonction
ARRAY. Les modifications aux variables q1 à q6 sont visibles dans table de donnée du dossier
« Work » de la bibliothèque SAS.
DATA BIOPSY ;
SET SASUSER.BIOPSY ;
ARRAY QUEST {6} q1-q6 ;
DO i = 1 TO 6 ;
IF QUEST{i} = 2 THEN QUEST{i} = 1 ;
IF QUEST{i} = 3 THEN QUEST{i} = 1 ;
END ;
DROP i;
RUN ;
24
Chapitre 2 – Lecture des données et définition des variables
Vérification des données manquantes
ARRAY nom du array {nombre d’éléments à traiter} noms des éléments ;
Nouvelle variable=0
DO i = position des éléments à traiter dans la suite entre { } ;
IF nom du array{i} = . THEN nouvelle variable = nouvelle variable + 1;
END
DROP i ;
Cette commande créée une nouvelle colonne dans la table de données qui compte le nombre de
données manquantes pour chaque sujet pour les variables spécifiées dans ARRAY.
Les exemples précédents ne présentent que quelques utilités de l’option ARRAY. D’autres
méthodes d’utilisation sont disponibles dans le guide de procédure « Base SAS » disponible sur
www.support.sas.com/documentation.
25
Chapitre 3 - Procédures SAS
3.1
Introduction à la programmation de procédures SAS
Une fois qu’une table virtuelle est formée à l’aide de l’énoncé DATA, des analyses
statistiques peuvent être effectuées sur les variables. Les commandes d’analyses statistiques
sont effectuées grâce à des énoncés de procédure (PROC). De façon générale, les énoncés
PROC requièrent un minimum de quatre lignes de programmation :
PROC nom de l’analyse DATA = nom de la table SAS ;
VAR (dans certaines analyses : CLASS) identification des variables ;
TITLE “titre donné à l’analyse” ;
RUN ;
La ligne PROC
L’énoncé PROC est toujours suivi du nom de l’analyse statistique souhaitée. Le
tableau 3.1 présente une liste des principales analyses statistiques ainsi que de quelques
autres procédures utiles.
Le nom de la table (DATA =) doit suivre le nom de la procédure. Cette spécification peut
toutefois être omise si l’ensemble du programme ne porte que sur une seule table.
Tableau 3.1 – Liste de procédures SAS
A. Analyses statistiques
Énoncé PROC
Statistiques descriptives
Moyenne, écart type, étendue
Analyse exploratoire des données
Tableau de fréquences
Cohérence interne (coefficient alpha)
PROC
PROC
PROC
PROC
MEANS
UNIVARIATE
FREQ
CORR
Analyses inductives univariées
Corrélation (Pearson, Spearman)
Proportion (khi-deux)
Test t
Analyse de variance (ANOVA, ANCOVA)
Régression simple
PROC
PROC
PROC
PROC
PROC
CORR
FREQ
TTEST
GLM
REG
Analyses inductives multivariées
Analyse de variance (MANOVA, MANCOVA)
Régression multiple
Analyse discriminante
Analyse factorielle
Analyse de regroupement (« cluster »)
Modélisation structurale
PROC
PROC
PROC
PROC
PROC
PROC
GLM
REG
DISCRIM
FACTOR
CLUSTER
CALIS
PROC
PROC
PROC
PROC
PRINT
RANK
STANDARD
SORT
B. Autres procédures
Visualisation des données
Transformation en données ordinales
Transformations linéaires (z, T, etc.)
Tri
Chapitre 3 – Procédures SAS
L’identification des variables
La manière d’identifier les variables soumises à l’analyse dépend de l’analyse souhaitée.
Par exemple, pour le calcul de la moyenne pour la variable taille, l’identification de la
variable se fera comme suit :
PROC MEANS DATA = bio;
VAR TAILLE;
RUN;
Dans le cas d’une analyse de variance (ANOVA) sur la variable taille en fonction du genre,
l’identification des variables se fera sur deux lignes afin de distinguer variable
dépendante (taille) et indépendante (genre) :
PROC GLM DATA = bio;
CLASS GENRE;
MODEL TAILLE = GENRE;
RUN;
Il est donc essentiel de connaître la syntaxe exacte qui correspond à la procédure qu’on
veut utiliser.
La ligne TITLE
On peut donner un titre (TITLE) à l’analyse effectuée par chaque énoncé PROC. Ce titre
apparaît au-dessus de chacune des pages de la sortie informatique correspondant à
cette analyse, et peut être utilisé pour préciser certains détails en facilitant la
compréhension.
Un titre (TITLE) peut s’étendre sur dix lignes, lesquelles sont spécifiées par TITLE1,
TITLE2, …, TITLE10. Le texte du titre pour chaque ligne doit être placé entre guillemets
(“) et se terminer par un point-virgule (;).
La ligne RUN
Cette ligne indique la fin d’un énoncé PROC.
3.1.1
Les options de procédure
Les procédures dans SAS peuvent être suivies d’une liste d’options qui modifieront
l’apparence des résultats de la sortie. Par exemple, si on prend l’énoncé PROC MEANS,
la sortie par défaut affiche le N, la moyenne, l’écart type, le minimum et le maximum.
27
Chapitre 3 – Procédures SAS
Si l’on veut modifier la sortie pour qu’elle affiche seulement le N, la moyenne et l’écart
type, on ajoute les options nécessaires à la fin de l’énoncé PROC :
La sortie affichera alors :
Les sections suivantes listent des énoncés PROC et quelques-unes de leurs commandes
d’options respectives.
3.2
Trois procédures de gestion des données
Les procédures présentées ici ont été conçues pour être effectuées sur une table
combinée des données biométriques et psychométriques de l’exemple (« biopsy »).
3.2.1
L’énoncé PROC PRINT
La procédure PRINT affiche, dans la fenêtre Sortie, les données de la table définie dans l’énoncé
DATA pour les variables indiquées dans une commande VAR. L’affichage des données est utile
entre autres suite à la transformation de variables, puisqu’elle permet de s’assurer que les
variables ont été correctement transformées. Elle permet aussi de vérifier que les analyses
seront faites sur les bonnes données.
PROC PRINT DATA = BIOPSY;
VAR SUJET GENRE AGE VITESSE Q1 Q2 Q6;
TITLE “Extrait de la table de l’exemple”;
RUN;
Cette procédure fournit l’information sous la forme suivante afin de permettre la
vérification de l’intégrité de la lecture des données de l’énoncé DATA.
28
Chapitre 3 – Procédures SAS
…
3.2.2
L’énoncé PROC PLOT
La procédure PLOT permet d’obtenir un diagramme de dispersion. Un tel diagramme permet de
visualiser la relation entre deux variables en plus de permettre de constater si certains postulats
(linéarité, homogénéité des variances) sont rencontrés.
PROC PLOT DATA = BIOPSY;
PLOT ERREURS*VITESSE;
TITLE “Diagramme de dispersion“;
RUN;
Ces lignes de programme permettent d’obtenir, dans la fenêtre Sortie, le diagramme
présenté au début de la page suivante. À noter que le graphique est composé lettre au lieu de
points. La légende du graphique nous indique ce qu’elles signifient.
29
Chapitre 3 – Procédures SAS
Les lettres indiquent combien d’observations
se trouvent à un point particulier dans le
graphique.
Deux des sujets ayant complété le test en
169 secondes ont commis 22 erreurs.
3.2.3
L’énoncé PROC STANDARD
La procédure STANDARD permet de normaliser les valeurs de quelques-unes ou de toutes les
variables d’une table de données. Cette procédure permet entre autres de remplacer les données
manquantes d’une variable par la moyenne de la variable. À la section 2.2.2.1 nous avons
remplacé l’âge 228 par un point. Il est possible, avec la procédure STANDARD de remplacer les
données manquantes de la variable « age » par la moyenne d’âge :
PROC STANDARD DATA = BIOPSY REPLACE;
VAR AGE;
RUN;
La procédure STANDARD peut aussi être utile si on cherche à standardiser une variable, il suffit
de préciser la moyenne et l’écart type dans les options de procédure:
PROC STANDARD DATA = BIOPSY MEAN = 0 STD = 1;
VAR ESTIM;
RUN;
La procédure STANDARD produit par défaut une nouvelle table de donnée dans Work nommée
« Data# ». Pour renommer cette table il suffit d’ajouter l’option OUT=nom de table de données
dans les options de procédures. Les commandes BY, FREQ et WEIGHT peuvent être utilisées
comme options pour la ligne VAR.
30
Chapitre 3 – Procédures SAS
3.2.4
L’énoncé PROC SORT
La procédure SORT est une procédure de tri. Elle permet de trier les observations en
fonction d’une ou de plusieurs variables spécifiées dans une commande BY :
PROC SORT DATA = BIOPSY;
BY GENRE;
RUN;
Le tri est nécessaire à chaque fois qu’une commande BY ou CLASS est requise dans une
procédure subséquente. Une procédure SORT, une fois exécutée, demeure opérationnelle pour le
reste du programme, à moins qu’une nouvelle procédure SORT ne survienne. Par défaut, les
observations sont triées de façon ascendante. Un tri descendant est possible grâce à l’option
DESCENDING placé après la commande BY.
La procédure SORT ne produit aucune sortie informatique ; il s’agit simplement d’une
réorganisation de la table virtuelle en vue d’un traitement.
Les lignes suivantes illustrent l’utilisation de l’énoncé PROC SORT pour l’affichage des
données de l’exemple séparément pour chaque groupe d’âge. :
PROC SORT DATA=BIOPSY;
BY GROUPE;
RUN;
PROC PRINT DATA=BIOPSY;
VAR SUJET AGE VITESSE Q1-Q4;
BY GROUPE;
TITLE “Extrait de la table
chaque groupe”;
RUN;
31
de
l’exemple
séparément
pour
Chapitre 3 – Procédures SAS
32
Chapitre 3 – Procédures SAS
3.3
Présentation graphique des données
3.3.1
L’énoncé PROC CHART
La procédure CHART permet d’obtenir un histogramme de fréquence dans la fenêtre sortie.
PROC CHART DATA= BIOPSY;
VBAR VITESSE;
TITLE “histogramme de fréquence“;
RUN;
33
Chapitre 3 – Procédures SAS
3.3.2
L’énoncé PROC GCHART
Lorsque l’énoncé PROC GCHART est utilisé au lieu de PROC CHART, l’histogramme de
fréquence ci-dessous est produit dans une fenêtre GRAPH.
3.4
Deux procédures de statistiques descriptives
34
Chapitre 3 – Procédures SAS
Les statistiques descriptives donnent un premier aperçu des variables à l’étude. Elles
permettent par ailleurs de vérifier certaines conditions (variabilité, normalité de distribution)
préalables à l’utilisation de statistiques inductives.
3.4.1
L’énoncé PROC MEANS
La procédure MEANS permet d’obtenir des statistiques descriptives d’un échantillon de
données. Les spécificateurs N, MEAN, MIN et MAX permettent de préciser les statistiques
souhaitées. Par exemple, la spécification MAXDEC=3 indique que tous les résultats sont arrondis
à trois décimales.
PROC MEANS DATA=BIOPSY N MEAN STD MIN MAX MAXDEC = 3;
VAR VITESSE;
TITLE “Statistiques descriptives pour la variable Vitesse”;
RUN;
Les statistiques descriptives obtenues avec ces lignes de programme sont illustrées au
haut de la page suivante.
3.4.2
L’énoncé PROC UNIVARIATE
Cette procédure permet d’obtenir plusieurs statistiques descriptives ainsi que des
représentations sommaires des données. Plusieurs renseignements concernant la distribution
des variables sont également produits, concernant entre autres les valeurs extrêmes, la
dispersion, la tendance centrale.
Le spécificateur PLOT produit un diagramme en tiges et feuilles, un diagramme en boîtes
et moustaches et un diagramme de probabilité normale. Le spécificateur NORMAL produit un test
de normalité, et le spécificateur FREQ, une description de la fréquence des valeurs d’une variable.
PROC UNIVARIATE DATA = BIOPSY NORMAL PLOT FREQ;
VAR Q1;
TITLE “Statistiques descriptives de la question Q1”;
RUN;
3.4.3
L’énoncé PROC POWER
L’énoncé de procédure PROC POWER se fait habituellement avant de commencer une
étude afin de trouver la puissance statistique d’un d’échantillon, ou, au contraire, la taille
d’échantillon nécessaire pour obtenir une certaine puissance statistique. Pour obtenir la
puissance statistique, il suffit d’indiquer la moyenne, l’écart type et la taille d’échantillon comme
option tel qu’illustré ci-dessous.
35
Chapitre 3 – Procédures SAS
PROC POWER;
ONESAMPLEMEANS
MEAN=8
STDDEV=40
NTOTAL=150
POWER=.;
RUN;
Pour cet exemple, la sortie indique une puissance statistique de 0,682
Lorsqu’on cherche le nombre de sujets nécessaire pour obtenir une telle puissance, il
suffit de changer la donnée manquante dans l’énoncé de procédure :
PROC POWER;
ONESAMPLEMEANS
MEAN=8
STDDEV=40
NTOTAL=.
POWER=0.682
La sortie nous indique que pour obtenir une puissance statistique de 0.682, il faut au moins 150
sujets.
PROC POWER options;
L’énoncé PROC POWER comprend de nombreuses analyses possibles, dont :
ONESAMPLEMEANS
Calcul la puissance et la taille d’échantillon pour les tests-t, tests d’équivalence et
les intervalles de confiances pour un seul échantillon
TWOSAMPLEMEANS
Calcul la puissance et la taille d’échantillon pour les tests-t, tests d’équivalence et
les intervalles de confiances de deux échantillons.
ONEWAYANOVA
Calcule la puissance et la taille d’échantillon pour les analyses de variances
MULTREG
Calcule la puissance et la taille d’échantillon pour les prédicteurs d’une
régression multiple.
ONECORR
Calcule la puissance et la taille d’échantillon pour les corrélations simples et
partielles entre deux variables.
PLOT
Affiche le graphique ou l’ensemble des graphiques pour l’échantillon de l’analyse. Les
options plot sont semblables aux options des autres graphiques SAS.
Sept autres options d’analyse sont disponibles pour l’énoncé PROC POWER.
Pour chaque option d’analyse ci-dessus, les options suivantes, entre autres, peuvent être utilisés.
36
Chapitre 3 – Procédures SAS
MEAN= moyenne de l’échantillon
STDDEV= écart type de l’échantillon
POWER= puissance statistique de l’échantillon
NTOTAL= taille de l’échantillon
ALPHA=spécifie la valeur de significativité qu’on cherche à obtenir (0,05 par défaut)
L’énoncé PROC GLMPOWER permet de calculer la puissance statistique et la taille
d’échantillon pour les modèles linéaires.
Les options pour l’énoncé PROC GLMPOWER sont les suivantes :
BY variables
CLASS variables
CONTRAST ?
MODEL variables dépendantes = variables indépendantes
PLOT
POWER
WEIGHT variables
3.5
Trois procédures de statistiques inductives
Il est hors du propos de ce guide de procéder à une présentation exhaustive des
procédures de statistiques inductives (ou inférentielles) pouvant être effectuées à l’aide du
progiciel SAS. Cependant, afin d’illustrer ce type de procédures, trois d’entre elles sont
présentées dans ce qui suit. Elles ont trait au test t, à la corrélation et aux tests d’association
dans le cas de variables catégorielles.
Une abondante documentation spécialisée existe sur la syntaxe et l’utilité des différentes
procédures SAS. Cette documentation est disponible au site suivant :
www.support.sas.com/documentation/ . Les documents « Base SAS » et « SAS/STAT » listés
dans l’index sont des liens utiles pour faire suite à ce guide.
3.5.1
L’énoncé PROC TTEST
Cet énoncé permet de calculer la statistique t de Student pour échantillons indépendants.
La variable indépendante est spécifiée dans la commande CLASS et la variable dépendante dans
la commande VAR (on peut aussi spécifier plus d’une variable dépendante) :
PROC TTEST DATA=BIOPSY;
CLASS GENRE;
VAR ERREURS;
TITLE “Test t pour la variable Erreurs en fonction du genre”;
RUN;
La sortie informatique de la procédure TTEST comprend trois sections : les statistiques
descriptives, le test t et un test d’homogénéité des variances. Après s’être assuré que les
statistiques descriptives correspondent bien à ce qu’on veut analyser, on vérifie si les variances
des deux groupes sont égales (homogénéité des variances). Cette hypothèse est testée à la
dernière section de la sortie (Equality of Variances) :
37
Chapitre 3 – Procédures SAS
Valeur F non significative
La probabilité que cette hypothèse soit vraie étant, pour notre exemple, de 0,0936 (et
donc supérieure à 0,05), l’hypothèse nulle d’égalité des variances ne peut être rejetée. On doit
donc conclure que les variances sont égales.
Cette information permet de lire la ligne appropriée dans la section du test t proprement
dit : dans la colonne intitulée « Variances », on choisit la ligne « Equal ». Sur cette ligne se
trouvent, dans l’ordre, le nombre de degrés de liberté (DF), la valeur de la statistique t cherchée
et la probabilité (Pr > | t |) qui y est associée :
3.5.2
L’énoncé PROC CORR
Cet énoncé permet de calculer différents types de coefficients de corrélation (BravaisPearson, Spearman) ainsi que le coefficient alpha de Cronbach, un coefficient de cohérence
interne. Il permet également le calcul de corrélations partielles en indiquant le nom de la variable
à contrôler statistiquement après une commande PARTIAL.
PROC CORR DATA=BIOPSY;
VAR VITESSE ERREURS;
PARTIAL GENRE;
TITLE “Corrélation entre la vitesse et le nombre d’erreurs”;
RUN;
La sortie informatique contient deux informations : le coefficient de corrélation
(par défaut, r de Bravais-Pearson) et la probabilité associée à l’hypothèse nulle d’une corrélation
égale à zéro dans la population (ρ = 0). Lorsque plusieurs coefficients sont présentés
simultanément, le nombre d’observations est également présenté pour chaque coefficient lorsque
ce nombre varie. L’illustration de la sortie produite par ces lignes de programme figure cidessous.
38
Chapitre 3 – Procédures SAS
Coefficient de corrélation
Matrice de corrélation
Probabilité associé à H0
Il est possible d’ajouter l’option ALPHA dans les options de procédures pour obtenir un
alpha de Cronbach dans la sortie. Les options de procédure NOCORR et NOMISS spécifient au
système de ne pas afficher la matrice de corrélation dans la sortie et de ne pas tenir compte des
données manquantes.
3.5.3
L’énoncé PROC FREQ
Cet énoncé permet de calculer divers tests et mesures d’association pour variables
catégorielles (khi-deux, coefficient phi, V de Cramér, coefficient de contingence, etc.). Dans cet
énoncé, l’identification des variables se fait d’une manière particulière : on doit indiquer deux
variables (ou plus) à mettre en relation à l’aide de la commande TABLES. La commande TABLES
peut s’accompagner d’options, qui sont séparé par un « / », dont la plus courante est l’option
CHISQ, qui produit le test du khi-deux.
PROC FREQ DATA=BIOPSY;
TABLES GENRE*GROUPE / CHISQ;
TITLE “Test du khi-deux pour les variables genre et groupe”;
RUN;
La sortie informatique de l’énoncé PROC FREQ comprend deux sections : un tableau
croisé des fréquences et un ensemble de statistiques. Le tableau croisé, tel qu’illustré à la page
suivante, inclut les fréquences brutes (Frequency), et ces mêmes fréquences exprimées en
pourcentages (de l’échantillon total (Pourcentage), par rangée (pourct. En ligne) et par colonne
(pourct. en col.)).
39
Chapitre 3 – Procédures SAS
Diverses statistiques sont présentées à la suite du tableau croisé. D’autres statistiques
peuvent être calculées en spécifiant la commande appropriée dans la section des options (à la
suite de la barre oblique dans la commande TABLES). Enfin, un message d’avertissement est
imprimé lorsque le nombre d’observations dans une ou plusieurs cellules est inférieur à 5.
40
Chapitre 3 – Procédures SAS
3.6
3.6.1
Les analyses multivariées
La régression multiple
Les analyses de régression peuvent être effectuées à l’aide de l’énoncé PROC REG :
PROC REG options ;
MODEL variable dépendante = variables indépendantes / options ;
PLOT R.*P. ;
TITLE 'titre donné à l’analyse' ;
RUN ;
Chacun des énoncés de ce programme seront repris et illustrés à l’aide de la régression
multiple portant sur la prédiction de l’estimation personnelle de la performance (estim) à l’aide
du nombre d’items complétés (vitesse) et du nombre d’erreurs commises (erreurs).
PROC REG options ;
L’énoncé PROC REG indique l’analyse de régression.
Les options incluent :
DATA= nom de la table SAS
Lorsque omise, l’analyse est effectuée sur les données de la dernière table
utilisée.
CORR
Affiche la matrice d’intercorrélations des variables spécifiées dans le modèle.
SIMPLE
Affiche les statistiques descriptives (somme, moyenne, somme de carrés,
variance, écart type) des variables spécifiées dans le modèle
MODEL variable dépendante = variables indépendantes / options ;
L’énoncé MODEL spécifie le modèle de régression à analyser. On y indique la variable qui
joue le rôle de variable dépendante (ou critère) à la gauche d’un signe d’égalité, et les
variables qui jouent le rôle de variables indépendantes (ou prédictrices) à la droite de ce
signe. Une seule variable indépendante définit une régression simple, plusieurs variables
indépendantes, une régression multiple.
La spécification du modèle peut s’accompagner de plusieurs options, spécifiées à la
droite d’une barre oblique, dont voici quelques-unes des plus fréquentes :
SELECTION= méthode de sélection des variables indépendantes
Les méthodes de sélection incluent les quatre énumérées ci-dessous ainsi que
cinq autres :
NONE (valeur par défaut ; il s’agit du modèle complet)
FORWARD
BACKWARD
STEPWISE
ALL
l’option ALL inclut les options décrites ci-dessous ainsi que 14 autres
STB
41
Chapitre 3 – Procédures SAS
affiche les coefficients de régression standardisés
PCORR2
affiche les corrélations partielles au carré
SCORR2
affiche corrélations semi-partielles au carré
P
calcule les valeurs prédites
R
produit une analyse des résidus
TOL
affiche les valeurs de tolérance pour chacun des coefficients
VIF
calcule les facteurs d’inflation de la variance
PLOT R.*P. ;
Produit un diagramme des résidus en fonction des valeurs prédites. Un tel diagramme
permet d’évaluer par inspection visuelle la rencontre des postulats de normalité, de
linéarité et d’homogénéité des variances :
Voici un exemple d’une procédure de régression multiple avec les données de la variable
« estim » comme variable dépendante et la « vitesse » ainsi que « l’erreur » comme variables
indépendantes. Cette procédure nous donne beaucoup d’information, alors nous avons
seulement inclus le diagramme de dispersion des résidus comme support visuel.
42
Chapitre 3 – Procédures SAS
3.6.2
La corrélation canonique
Les analyses de corrélation canonique peuvent être effectuées à l’aide de l’énoncé PROC
CANCORR :
PROC CANCORR options ;
VAR variables dépendantes ;
WITH variables indépendantes ;
TITLE 'titre donné à l’analyse' ;
RUN ;
Précisons entre autres :
PROC CANCORR options ;
L’énoncé PROC CANCORR indique l’analyse de corrélation canonique.
Les options incluent :
DATA= nom de la table SAS
Lorsque omise, l’analyse est effectuée sur les données de la dernière table
utilisée.
SIMPLE
affiche les statistiques descriptives (somme, moyenne, somme de carrés,
variance, écart type) des variables spécifiées dans le modèle
CORR
affiche la matrice d’intercorrélations des variables spécifiées dans le modèle
Présenté ci-dessous est un exemple d’une procédure de corrélation canonique, suivie d’une
illustration de la première page de résultat. Certaines des variables utilisées ne sont pas listées
43
Chapitre 3 – Procédures SAS
dans les tableaux aux pages 12 et 13. Ces données sont disponibles au site web du professeur
François vigneau : http://www8.umoncton.ca/umcm-vigneau_f/enseigne.htm
3.6.3
L’analyse factorielle exploratoire
Divers types d’analyse factorielle peuvent être effectués à l’aide de l’énoncé PROC
FACTOR. La forme générale du programme est la suivante :
PROC FACTOR options ;
VAR variables ;
TITLE 'titre donné à l’analyse' ;
RUN ;
La procédure PROC FACTOR offre une grande flexibilité rendue possible par la
combinaison de diverses options :
PROC FACTOR options ;
L’énoncé PROC FACTOR indique l’analyse factorielle exploratoire. Cet énoncé comprend
de nombreuses options, dont :
DATA= nom de la table SAS
Lorsqu’omis, l’analyse est effectuée sur les données de la dernière table utilisée.
44
Chapitre 3 – Procédures SAS
SIMPLE
Affiche les statistiques descriptives (somme, moyenne, somme de carrés,
variance, écart type) des variables spécifiées dans l’énoncé VAR
CORR
Affiche la matrice d’intercorrélations des variables spécifiées dans l’énoncé VAR
METHOD= méthode d’extraction des facteurs
Les méthodes d’extraction incluent les deux énumérées ci-dessous ainsi que
sept autres :
PRINCIPAL (valeur par défaut ; il s’agit de la méthode des moindres carrés)
ML (maximum de vraisemblance)
MINEIGEN= p
Spécifie une valeur critique minimale de valeur propre (p) pour qu’un facteur soit
retenu. Une valeur p supérieure à 1 correspond au « critère de Kaiser » (Kaiser,
1960). C’est ce critère de Kaiser qui est utilisé par défaut pour déterminer le
nombre de facteurs
NFACT= n
Spécifie un nombre de facteurs à retenir, où n = nombre de facteurs retenus
PRIORS valeurs de départ des communautés
Identifiée sur une ligne séparée, cette option spécifie les valeurs de départ des
communautés. Les deux types de valeurs suivantes sont possibles, ainsi que six
autres :
ONE (un, c’est-à-dire toute la variance de chacune des variables ; c’est la valeur
par défaut)
SMC (coefficient de détermination de l’analyse de régression multiple : squared
multiple correlations)
RE
Place les saturations en ordre décroissant
ROTATE= méthode de rotation
Indique la méthode de rotation des facteurs à utiliser.
Les méthodes de rotations orthogonales suivantes sont disponibles :
VARIMAX
EQUAMAX
QUARTIMAX
ainsi que les méthodes de rotations obliques
PROMAX
OBLIMIN
Dix-huit autres méthodes de rotation sont également disponibles.
SCREE
Affiche le graphique de la « pente des éboulements » (scree plot) indiquant la
valeur propre associée à chacun des facteurs et utilisé pour déterminer le
nombre de facteurs à retenir (scree test, Cattell, 1966)
ROUND
Limite le nombre de chiffres rapportés pour les saturations à deux décimales
45
Chapitre 3 – Procédures SAS
FLAG= taille des saturations à signaler
Ajoute à l’affichage des saturations un signalement, à l’aide d’astérisques, des
valeurs supérieures à la taille spécifiée (par exemple : FLAG= .30)
OUT= nom d’une nouvelle table SAS
Crée une nouvelle table SAS qui inclut toutes les variables de la table utilisée
pour l’analyse ainsi que les scores factoriels pour les facteurs retenus. Dans le
cas où une rotation a été effectuée, les scores factoriels produits sont ceux qui
correspondent aux facteurs après rotation. La variable correspondant aux scores
factoriels du premier facteur reçoit le nom de FACTOR1, celle correspondant au
deuxième facteur, FACTOR2, et ainsi de suite. L’option OUT= doit être utilisée en
conjonction avec l’option NFACT=
VAR variables ;
L’énoncé VAR sert à spécifier les variables de la table à inclure dans l’analyse factorielle.
Voici un exemple d’une procédure d’analyse factorielle avec les 6 questions du questionnaire
après l’inversion des questions 3 et 6. La procédure inclut plusieurs options. Plus spécifiquement,
ces dernières vont faire en sorte qu’il n’y a que 3 facteurs retenus (nfact=2), qu’il y a une rotation
de facteur et qu’il s’agit de la rotation Varimax (rotate=varimax) et finalement qu’un graphique de
la pente des éboulements va être généré (scree)
46
Chapitre 3 – Procédures SAS
47
Chapitre 3 – Procédures SAS
3.6.4
La modélisation structurale
48
Chapitre 3 – Procédures SAS
La procédure PROC CALIS permet de réaliser des analyses d’équations structurales (ou
modèles structuraux : analyses en pistes causales et analyses factorielles confirmatoires). Quatre
modes de programmation distincts permettent de spécifier un modèle d’analyse structurale grâce
à PROC CALIS : le mode RAM (sous forme de liste décrivant le modèle structural), le mode
COSAN (notation matricielle), le mode LINEQS et le mode FACTOR. Seule la programmation de
type LINEQS est présentée ici. Le mode LINEQS consiste à décrire le modèle structural à
analyser à l’aide d’un ensemble d’équations structurales auxquelles on ajoute de l’information
concernant les variances et les covariances.
PROC CALIS options ;
LINEQS
équation 1,
équation 2,
…
équation j ;
STD
variance 1,
variance 2,
…
variance k ;
COV
covariance 1,
covariance 2,
…
covariance m ;
TITLE 'titre donné à l’analyse' ;
RUN ;
PROC CALIS options ;
L’énoncé PROC CALIS comporte à lui seul plus d’une soixantaine d’options. En voici
quelques-unes parmi les plus utiles.
DATA= nom de la table SAS
Lorsqu’omise, l’analyse est effectuée sur les données de la dernière table utilisée
COVARIANCE
Par défaut, PROC CALIS analyse une matrice de corrélations. L’option
COVARIANCE fait en sorte que l’analyse porte sur la matrice de variancescovariances plutôt que la matrice de corrélations
CORR
Affiche la matrice d’intercorrélations
SIMPLE
Affiche la moyenne, l’écart type et les degrés d’asymétrie et d’aplatissement des
variables manifestes
KURTOSIS
Calcule et présente les degrés d’asymétrie et d’aplatissement univariés, plusieurs
coefficients d’aplatissement multivariés et le numéros des observations qui
contribuent le plus au degré d’aplatissement multivarié.
METHOD = options
49
Chapitre 3 – Procédures SAS
Par défaut, l’estimation des paramètres du modèle est obtenue à l’aide de la
méthode du maximum de vraisemblance (METHOD = ML), qui nécessite une
matrice de corrélation régulière. Toutefois, huit autres méthodes d’estimation sont
également disponibles, dont les suivantes :
GLS
Méthode des moindres carrés généralisée, nécessitant une matrice de corrélation
régulière
LSGLS
Méthode des moindres carrés non pondérés suivie de la méthode des moindres
carrés généralisée
LSML
Méthode des moindres carrés non pondérés suivie de la méthode du maximum
de vraisemblance
LS
Méthode des moindres carrés non pondérés
SUMMARY
Présente le tableau des indices d’ajustement
RESIDUAL
Affiche la matrice des résidus normalisée, particulièrement utile pour évaluer la
correspondance du modèle aux données ainsi que pour déterminer la nécessité
d’apporter des modifications
TOTEFF
Affiche les effets totaux et indirects.
MODIFICATION
Calcule et présente les indices des tests de Lagrange et de Wald.
PALL
Inclut l’ensemble des options possibles
LINEQS
L’énoncé LINEQS comporte un ensemble d’équations qui, combinées avec la
spécification de variances et de covariances, décrivent un modèle structural. Les
équations y sont présentées les unes à la suite des autres, séparées par virgules :
LINEQS
V1 = PV1V2 V2 + PV1V5 V5 + PV1V6 V6 + … + E1,
V2 = PV2V3 V3 + PV2V4 V4 + … + E2;
Les équations comportent, à gauche, une variable endogène (soit une variable manifeste
préalablement identifiée dans DATA, soit une variable latente) et, à droite, les variables
indépendantes (précédées du coefficient correspondant qui doit être estimé ; par
exemple, dans la première équation, le coefficient de la variable V2 est nommé PV1V2)
et l’erreur résiduelle associée à la variable endogène. Les variables indépendantes
indiquées à droite peuvent, tout comme celles indiquées à gauche, être manifestes ou
latentes. Outre le respect d’un maximum de huit caractères, les noms de variables
doivent respecter certaines règles spécifiques à la procédure CALIS. Le nom d’une
variable latente doit commencer par la lettre F, le nom d’une erreur associée à une
variable manifeste doit commencer par E, le nom d’une erreur associée à une variable
latente doit commencer par un D. Les noms des coefficients à estimer ne sont soumis à
50
Chapitre 3 – Procédures SAS
aucune règle spécifique. S’ils ne sont pas nommés, ils sont fixés (à une constante dont la
valeur est indiquée dans l’équation, où à 1 si aucune valeur n’est indiquée). L’utilisation
de noms de paramètres identiques pour des effets différents a pour effet de contraindre
ces paramètres à l’égalité.
STD
Cet énoncé permet d’identifier les variances qui doivent être estimées dans l’analyse.
STD
E1
E2
V3
V4
=
=
=
=
VARE1,
VARE2,
VARV3 (10.),
24.8;
L’exemple ci-dessus permet d’estimer la variance de l’erreur résiduelle de E1 et de E2,
ainsi que la variance des variables V3. Comme l’indique le nombre entre parenthèses à
la suite du nom de variance VARV3, une valeur de départ de 10 est prévue pour
l’estimation de ce paramètre. Comme aucun nom de paramètre n’est indiqué à droite de
l’équation pour la variable V4, la variance de cette variable n’est pas estimée ; elle est
plutôt fixée à la valeur indiquée : 24,8. La variance devrait être estimée pour toutes les
variables exogènes du modèle, qu’il s’agisse de variables manifestes ou des variances
d’erreur (latentes) des variables endogènes. La valeur d’une variance du modèle est zéro
lorsqu’aucune indication n’est donnée à son sujet.
COV
L’énoncé COV permet d’indiquer quelles covariances doivent être estimées et quelles
covariances doivent être fixées. Ces éléments correspondent aux covariances des
variables exogènes et aux covariances d’erreurs des variables endogènes. La valeur
d’une covariance du modèle est zéro lorsque aucune indication n’est donnée à son sujet.
COV
V3 V4 = CV3V4,
V3 V5 = .5,
…
V5 V6 = CV5V6 (3.);
L’exemple ci-dessus a pour effet de requérir que la covariance (la corrélation) entre les
variables V3 et V4 soit estimée (paramètre nommé CV3V4), que la covariance entre les
variables V3 et V5 soit fixée à 0,5, et qu’une valeur de départ de 3,0 soit utilisée pour
l’estimation de la covariance entre V5 et V6.
51
Chapitre 3 – Procédures SAS
INDEX
A
E
Écart type, 28
STD, 21
Éditeur, 8
ELSE, 24
Énoncé, 7
Énoncé de procédure, 7
EQUAMAX, 48
Étape « data », 7
Étapes de procédures, 7
Étendue, 22, 28
Explorateur, 10
Exporter des données, 17
ABS. Voir Valeur absolue
ALL, 44
ALPHA, 39
Analyse de regroupement, 6, 29
Analyse de variance, 6, 29
Analyse discriminante, 6, 29
Analyse factorielle, 6, 29
Analyse factorielle exploratoire, 47
Analyses descriptives, 6
Analyses inductives multivariées, 6, 29
Analyses inductives univariées, 6, 28
Analyses multivariées, 43
Analyses statistiques, 28
F
B
fichier de données, 18
Fichier de données, 6
FLAG, 48
Fonction, 7
Fonctions arithmétiques, 21
Fonctions logiques, 23
Fonctions mathématiques, 21
Fonctions statistiques, 21
FORWARD, 43
FREQ
Option PROC STANDARD, 33
Option PROC UNIVARIATE, 37
Fusionner des données, 19
BACKWARD, 43
Bibliothèque, 10
Boucles, 25
BY, 39
C
CARDS, 15, 18
CHISQ, 41
CLASS
Option PROC GLMPOWER, 39
Option PROC TTEST, 39
Cohérence interne, 28
Commande, 7
Commentaire, 7
CONTRAST, 39
CORR
Option PROC CALIS, 51
Option PROC CANCORR, 46
Option PROC FACTOR, 47
Option PROC REG, 43
corrélation, 19
Corrélation, 28
Corrélation canonique, 6, 45
COV, 53
COVARIANCE, 51
G
Gestion des données, 31
GLS, 52
H
Histogramme de fréquence, 35, 36
I
IF…THEN, 23, 24
Importer des données, 16
INFILE, 17, 18
INPUT, 14, 15
Inverser des données, 24
D
DATA, 14, 15
Diagramme de dispersion, 32
J
Journal, 8, 9
52
Chapitre 3 – Procédures SAS
Nombre d’observations, 22
Nombre d’observations manquantes, 22
NORMAL
fonction RAND(dist), 26
Option PROC UNIVARIATE, 37
NTOTAL, 39
K
KURTOSIS, 51
L
Lecture des données, 14
LINEQS, 52
LINESIZE, 15
LSGLS, 52
LSML, 52
O
OBLIMIN, 48
ONE, 47
ONECORR, 38
ONESAMPLEMEANS, 38
ONEWAYANOVA, 38
Onglets Résultats/Explorateur, 9
Opérateurs de base, 7
Options, 7, 15
Options de l’étape data, 7
Options de procédure, 7, 30, 41
OUT, 48
M
Matrice de corrélation, 19
MAX
Fonction MAX, 21
Option PROC MEANS, 37
MAXDEC, 37
Maximum, 21
MEAN
Fonction MEAN, 21
Option PROC MEANS, 37
Option PROC POWER, 39
MERGE, 20
METHOD
Option PROC CALIS, 52
Option PROC FACTOR, 47
MIN
Fonction MIN, 21
Option PROC MEANS, 37
MINEIGEN, 47
Minimum, 21
MISSOVER, 18
ML, 47
MOD, 21
Mode, 21
Mode fixe, 18
Mode libre, 18
MODEL, 29, 43
Commande PROC REG, 43
Option PROC GLMPOWER, 39
Modélisation structurale, 29, 50
MODIFICATION, 52
Moyenne, 21, 28
MULTREG, 38
P
P, 44
PAGENO, 15
PAGESIZE, 15
PALL, 52
PARTIAL, 40
PCORR2, 44
PLOT
Option PROC GLMPOWER, 39
Option PROC PLOT, 32
Option PROC POWER, 39
Option PROC REG, 43, 44
Option PROC UNIVARIATE, 37
POWER
Option PROC GLMPOWER, 39
Option PROC POWER, 39
Présentation graphique des données, 35
PRINCIPAL, 47
PRIORS, 47
PROC, 28
PROC CALIS, 29, 51
PROC CANCORR, 45
PROC CHART, 35
PROC CLUSTER, 29
PROC CORR, 28, 40
PROC DISCRIM, 29
PROC FACTOR, 29, 47
PROC FREQ, 28, 41, 42
PROC GCHART, 36
PROC GLM, 29
PROC GLMPOWER, 39
PROC MEANS, 28, 29, 30, 37
N
N
Nombre d'observations, 22
Option PROC MEANS, 37
NFACT, 47
NMISS, 22
NOLABEL, 15
53
Chapitre 3 – Procédures SAS
PROC PLOT, 32
PROC POWER, 37, 38
PROC PRINT, 29, 31, 33
PROC RANK, 29
PROC REG, 29, 43
PROC SORT, 29, 33
PROC STANDARD, 29, 32, 33
PROC TTEST, 28, 39
PROC UNIVARIATE, 28, 37
Procédures, 28, 29, 31, 39
Programme SAS, 7
PROMAX, 48
Proportion, 28
Puissance, 21
Puissance statistique, 38
Option PROC REG, 43
SMC, 47
Somme, 22
Sortie, 8, 9
SQRT, 21
Statistiques descriptives, 28, 36
STB, 44
STD. Voir Écart type
Option PROC CALIS, 53
STDDEV, 39
STEPWISE, 44
SUM. Voir Somme
SUMMARY, 52
T
Table de données, 18
Table SAS, 6
Tableau de fréquences, 28
TABLES, 41
Taille d’échantillon, 38
Test t, 6, 28
TITLE, 28, 30
TOL, 44
TOTEFF, 52
Transformation en données ordinales, 29
Transformations de variables, 20
Transformations linéaires, 29
Tri, 29
TWOSAMPLEMEANS, 38
Q
QUARTIMAX, 48
R
R, 44
Racine carrée, 21
RAND(dist), 26
RANGE, 22
RE, 48
Régression multiple, 6, 29, 43
Régression simple, 6, 29
RESIDUAL, 52
Résultats, 9, 10
ROTATE, 48
ROUND, 48
RUN, 14, 15, 28
V
Valeur absolue, 21
VAR
Commande variable, 28
Fonction variance, 21
Variable, 29
VARIMAX, 48
VIF, 44
Visualisation des données, 29
S
Saisie de données, 14
Sasuser, 10
SCORR2, 44
SCREE, 48
SELECTION, 43
SIMPLE
Option PROC CALIS, 51
Option PROC CANCORR, 46
Option PROC FACTOR, 47
W
Work, 10, 17
54