Publié le :
Statistique CREATION_INTERNE

Analyses de Variance (ANOVA) et Covariance (ANCOVA)

Ce code est également disponible en : Deutsch English
En attente de validation
Le script est une suite d'exemples d'analyses statistiques. Pour chaque exemple, un jeu de données est d'abord créé via une étape DATA avec des données internes (CARDS). Ensuite, des procédures de visualisation comme PROC BOXPLOT et PROC SGPLOT sont utilisées pour explorer les relations entre les variables. Le cœur de l'analyse repose sur PROC GLM (General Linear Models) qui est utilisée pour effectuer : 1) Une ANOVA pour tester l'effet d'une variable de classification sur une variable de réponse. 2) Une ANCOVA pour faire de même en ajustant l'effet pour une variable continue (covariable). Les moyennes ajustées (LSMEANS) sont calculées pour comparer les groupes. Ce processus est répété pour plusieurs jeux de données nommés medicine, data1, edu, na, et sale.
Analyse des données

Type : CREATION_INTERNE


Tous les jeux de données (medicine, data1, edu, na, sale) sont créés et peuplés directement dans le script à l'aide d'étapes DATA et de l'instruction CARDS/DATALINES. Aucune donnée externe n'est requise.

1 Bloc de code
DATA STEP Data
Explication :
Création de la table 'medicine'. L'option '@@' dans l'instruction INPUT indique à SAS de lire plusieurs observations à partir d'une même ligne de données.
Copié !
1DATA medicine;
2INPUT trt x y @@;
3CARDS;
41 27.2 32.6 1 22.0 36.6
51 33.0 37.7 1 26.8 31.0
62 28.6 33.8 2 26.8 31.7
72 26.5 30.7 2 26.8 30.4
83 28.6 35.2 3 22.4 29.1
93 23.2 28.9 3 24.4 30.2
104 29.3 35.0 4 21.8 27.0
114 30.3 36.4 4 24.3 30.5
125 20.4 24.6 5 19.6 23.4
135 25.1 30.3 5 18.1 21.8
14;
15RUN;
2 Bloc de code
PROC SORT
Explication :
Tri du jeu de données 'medicine' en fonction de la variable de traitement 'trt'. Cette étape est souvent un prérequis pour les analyses 'BY-group'.
Copié !
1PROC SORT DATA=medicine;
2 BY trt;
3RUN;
3 Bloc de code
PROC BOXPLOT
Explication :
Génération de boîtes à moustaches (boxplots) pour visualiser la distribution de la variable 'y' pour chaque groupe de traitement 'trt'.
Copié !
1PROC BOXPLOT DATA=medicine;
2 plot y*trt;
3RUN;
4 Bloc de code
PROC SGPLOT
Explication :
Création d'un nuage de points pour visualiser la relation entre les variables 'x' et 'y', en différenciant les points par groupe de traitement 'trt'.
Copié !
1 
2PROC SGPLOT
3DATA=medicine;
4scatter x=x y=y / group=trt;
5RUN;
6 
5 Bloc de code
PROC GLM
Explication :
Analyse de variance (ANOVA). Ce bloc teste si la moyenne de la variable de réponse 'y' diffère significativement entre les groupes définis par 'trt'. LSMEANS avec TDIFF compare les moyennes de chaque paire de groupes.
Copié !
1PROC GLM DATA=medicine ;
2CLASS trt;
3MODEL y=trt /SOLUTION;
4LSMEANS trt/TDIFF;
5RUN;
6 Bloc de code
PROC GLM
Explication :
Analyse de covariance (ANCOVA). Ce modèle teste les différences de 'y' entre les groupes 'trt' tout en contrôlant l'effet de la covariable continue 'x'.
Copié !
1PROC GLM DATA=medicine ;
2CLASS trt;
3MODEL y=trt x /SOLUTION;
4LSMEANS trt/TDIFF;
5RUN;
7 Bloc de code
DATA STEP Data
Explication :
Création d'un second jeu de données 'data1' avec une variable de traitement textuelle ('A', 'B') et deux variables numériques.
Copié !
1DATA data1;
2 INPUT trt $ x y;
3 CARDS;
4A 5 20
5A 10 23
6A 12 30
7A 9 25
8A 23 34
9A 21 40
10A 14 27
11A 18 38
12A 6 24
13A 13 31
14B 7 19
15B 12 26
16B 27 33
17B 24 35
18B 18 30
19B 22 31
20B 26 34
21B 21 28
22B 14 23
23B 9 22
24;
25RUN;
8 Bloc de code
PROC GLM
Explication :
Exécution d'une analyse de covariance (ANCOVA) sur le jeu de données 'data1' pour évaluer l'effet de 'trt' sur 'y' en ajustant pour 'x'.
Copié !
1PROC GLM DATA=data1 ;
2CLASS trt;
3MODEL y=trt x /SOLUTION;
4LSMEANS trt/TDIFF;
5RUN;
9 Bloc de code
DATA STEP Data
Explication :
Création du jeu de données 'edu' pour comparer différentes méthodes. L'option '@@' permet de lire plusieurs observations par ligne.
Copié !
1DATA edu;
2 INPUT method x y @@;
3 CARDS;
41 29 39 1 4 34 1 18 36
52 17 35 2 35 38 2 3 32
63 1 38 3 15 43 3 32 44
7;
8RUN;
10 Bloc de code
PROC GLM
Explication :
Analyse de covariance (ANCOVA) sur la table 'edu' pour comparer l'effet des 'method' sur 'y' en contrôlant pour 'x'.
Copié !
1PROC GLM DATA=edu ;
2CLASS method;
3MODEL y=method x /SOLUTION;
4LSMEANS method/TDIFF;
5RUN;
11 Bloc de code
DATA STEP Data
Explication :
Création de la table 'na' avec trois groupes de traitement (A, B, C).
Copié !
1DATA na;
2INPUT trt $ x y @@;
3CARDS;
4A 11 6 A 8 0 A 5 2 A 14 8 A 19 11 A 6 4 A 10 13 A 6 1 A 11 8 A 3 0
5B 6 0 B 6 2 B 7 3 B 8 1 B 18 18 B 8 4 B 19 14 B 8 9 B 5 1 B 15 9
6C 16 13 C 13 10 C 11 18 C 9 5 C 21 23 C 16 12 C 12 5 C 12 16 C 7 1 C 12 20
7;
8RUN;
12 Bloc de code
PROC GLM
Explication :
Analyse de covariance (ANCOVA) sur les données 'na'.
Copié !
1PROC GLM DATA=na ;
2CLASS trt;
3MODEL y=trt x /SOLUTION;
4LSMEANS trt/TDIFF;
5RUN;
13 Bloc de code
DATA STEP Data
Explication :
Création du dernier jeu de données d'exemple, 'sale'.
Copié !
1DATA sale;
2INPUT type x y @@;
3CARDS;
41 38 21 1 39 26 1 36 22 1 45 28 1 33 19
52 43 34 2 38 26 2 38 29 2 27 18 2 34 25
63 24 23 3 32 29 3 31 30 3 21 16 3 28 29
7;
8RUN;
14 Bloc de code
PROC GLM
Explication :
Analyse de covariance finale sur la table 'sale' pour évaluer l'effet du 'type' sur 'y' en ajustant pour la covariable 'x'.
Copié !
1PROC GLM DATA=sale ;
2CLASS type;
3MODEL y=type x /SOLUTION;
4LSMEANS type/TDIFF;
5RUN;
Ce matériel est fourni "tel quel" par We Are Cas. Il n'y a aucune garantie, expresse ou implicite, quant à la qualité marchande ou à l'adéquation à un usage particulier concernant le matériel ou le code contenu dans les présentes. We Are Cas n'est pas responsable des erreurs dans ce matériel tel qu'il existe maintenant ou existera, et We Are Cas ne fournit pas de support technique pour celui-ci.