Le script commence par la génération d'un jeu de données synthétique nommé 'Mono1' contenant des valeurs manquantes dans la variable 'y1'. Ensuite, il utilise PROC MI pour imputer ces valeurs manquantes. La méthode d'imputation choisie est la régression monotone avec des détails affichés. Une considération particulière est faite pour les données manquantes non aléatoires (MNAR) sur 'y1', modelée en fonction du groupe de traitement 'Trt' lorsque 'Trt' est égal à '0'. Le jeu de données imputé est sauvegardé dans 'outex15'. Des procédures PROC PRINT sont utilisées pour afficher un aperçu des données originales et imputées.
Data Analysis
Type : CREATION_INTERNE
Le jeu de données initial 'Mono1' est créé directement dans le script via un DATA STEP utilisant des fonctions de génération de nombres aléatoires (rannor, ranuni). Le jeu de données 'outex15' est le résultat de l'imputation effectuée par PROC MI.
1 Code Block
DATA STEP Data
Explanation : Ce bloc DATA STEP crée le jeu de données 'Mono1'. Il génère des observations pour deux groupes de traitement (Trt=0 et Trt=1) avec des variables 'y0' et 'y1'. La variable 'y1' est conditionnellement rendue manquante (valeur '.') pour environ 30% des observations, simulant ainsi un scénario de données manquantes.
Copied!
data Mono1;
do Trt=0 to 1;
do j=1 to 5;
y0=10 + rannor(999);
y1= y0 + Trt + rannor(999);
if (ranuni(999) < 0.3) then y1=.;
output;
end; end;
do Trt=0 to 1;
do j=1 to 45;
y0=10 + rannor(999);
y1= y0 + Trt + rannor(999);
if (ranuni(999) < 0.3) then y1=.;
output;
end; end;
drop j;
run;
1
DATA Mono1;
2
DO Trt=0 to 1;
3
DO j=1 to 5;
4
y0=10 + rannor(999);
5
y1= y0 + Trt + rannor(999);
6
IF (ranuni(999) < 0.3) THEN y1=.;
7
OUTPUT;
8
END; END;
9
10
DO Trt=0 to 1;
11
DO j=1 to 45;
12
y0=10 + rannor(999);
13
y1= y0 + Trt + rannor(999);
14
IF (ranuni(999) < 0.3) THEN y1=.;
15
OUTPUT;
16
END; END;
17
drop j;
18
RUN;
2 Code Block
PROC PRINT
Explanation : Cette PROC PRINT affiche les 10 premières observations du jeu de données 'Mono1' pour donner un aperçu de la structure des données avant imputation. Seules les variables 'Trt', 'Y0' et 'Y1' sont incluses dans la sortie.
Copied!
proc print data=Mono1(obs=10);
var Trt Y0 Y1;
title 'First 10 Obs in the Trial Data';
run;
1
PROC PRINTDATA=Mono1(obs=10);
2
var Trt Y0 Y1;
3
title 'First 10 Obs in the Trial Data';
4
RUN;
3 Code Block
PROC MI
Explanation : Cette PROC MI réalise l'imputation multiple des valeurs manquantes dans le jeu de données 'Mono1'. Elle utilise la graine '14823' pour la reproductibilité et génère 15 jeux de données imputés, stockés dans 'outex15'. La méthode 'monotone reg' est spécifiée pour l'imputation par régression monotone, avec l'option 'details' pour des informations supplémentaires. La clause 'mnar' indique que 'y1' est Missing Not At Random, et son modèle est conditionné par 'Trt' étant '0'.
Copied!
proc mi data=Mono1 seed=14823 nimpute=15 out=outex15;
class Trt;
monotone reg (/details);
mnar model( y1 / modelobs= (Trt='0'));
var y0 y1;
run;
Explanation : Cette PROC PRINT affiche les 10 premières observations du jeu de données imputé 'outex15'. Cela permet de visualiser les résultats de l'imputation multiple effectuée par PROC MI.
Copied!
proc print data=outex15(obs=10);
title 'First 10 Observations of the Imputed Data Set';
run;
1
2
PROC PRINT
3
DATA=outex15(obs=10);
4
title 'First 10 Observations of the Imputed
5
Data Set';
6
RUN;
7
This material is provided "as is" by We Are Cas. There are no warranties, expressed or implied, as to merchantability or fitness for a particular purpose regarding the materials or code contained herein. We Are Cas is not responsible for errors in this material as it now exists or will exist, nor does We Are Cas provide technical support for it.
Copyright Info : SAS SAMPLE LIBRARY
Related Documentation
Aucune documentation spécifique pour cette catégorie.
SAS and all other SAS Institute Inc. product or service names are registered trademarks or trademarks of SAS Institute Inc. in the USA and other countries. ® indicates USA registration. WeAreCAS is an independent community site and is not affiliated with SAS Institute Inc.
This site uses technical and analytical cookies to improve your experience.
Read more.