Veröffentlicht am :
Statistik CREATION_INTERNE

Beispiel 15 der Dokumentation für PROC MI

Dieser Code ist auch verfügbar auf: English Español Français
Wartet auf Validierung
Das Skript beginnt mit der Generierung eines synthetischen Datensatzes namens 'Mono1', der fehlende Werte in der Variablen 'y1' enthält. Anschließend wird PROC MI verwendet, um diese fehlenden Werte zu imputieren. Die gewählte Imputationsmethode ist die monotone Regression mit angezeigten Details. Eine besondere Berücksichtigung erfolgt für nicht zufällig fehlende Daten (MNAR) bei 'y1', modelliert als Funktion der Behandlungsgruppe 'Trt', wenn 'Trt' gleich '0' ist. Der imputierte Datensatz wird in 'outex15' gespeichert. PROC PRINT-Prozeduren werden verwendet, um eine Vorschau der ursprünglichen und imputierten Daten anzuzeigen.
Datenanalyse

Type : CREATION_INTERNE


Der anfängliche Datensatz 'Mono1' wird direkt im Skript über einen DATA STEP erstellt, der Zufallszahlengenerierungsfunktionen (rannor, ranuni) verwendet. Der Datensatz 'outex15' ist das Ergebnis der von PROC MI durchgeführten Imputation.

1 Codeblock
DATA STEP Data
Erklärung :
Dieser DATA STEP-Block erstellt den Datensatz 'Mono1'. Er generiert Beobachtungen für zwei Behandlungsgruppen (Trt=0 und Trt=1) mit den Variablen 'y0' und 'y1'. Die Variable 'y1' wird bedingt für etwa 30% der Beobachtungen als fehlend (Wert '.') markiert, wodurch ein Szenario fehlender Daten simuliert wird.
Kopiert!
1DATA 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;
18RUN;
2 Codeblock
PROC PRINT
Erklärung :
Diese PROC PRINT zeigt die ersten 10 Beobachtungen des Datensatzes 'Mono1' an, um einen Überblick über die Datenstruktur vor der Imputation zu geben. Nur die Variablen 'Trt', 'Y0' und 'Y1' sind in der Ausgabe enthalten.
Kopiert!
1PROC PRINT DATA=Mono1(obs=10);
2 var Trt Y0 Y1;
3 title 'First 10 Obs in the Trial Data';
4RUN;
3 Codeblock
PROC MI
Erklärung :
Diese PROC MI führt die multiple Imputation fehlender Werte im Datensatz 'Mono1' durch. Sie verwendet den Seed '14823' für die Reproduzierbarkeit und generiert 15 imputierte Datensätze, die in 'outex15' gespeichert werden. Die Methode 'monotone reg' wird für die monotone Regressionsimputation spezifiziert, mit der Option 'details' für zusätzliche Informationen. Die 'mnar'-Klausel gibt an, dass 'y1' Missing Not At Random ist und ihr Modell durch 'Trt' gleich '0' bedingt ist.
Kopiert!
1PROC MI DATA=Mono1 seed=14823 nimpute=15 out=outex15;
2 class Trt;
3 monotone reg (/details);
4 mnar model( y1 / modelobs= (Trt='0'));
5 var y0 y1;
6RUN;
4 Codeblock
PROC PRINT
Erklärung :
Diese PROC PRINT zeigt die ersten 10 Beobachtungen des imputierten Datensatzes 'outex15' an. Dies ermöglicht die Visualisierung der Ergebnisse der durch PROC MI durchgeführten multiplen Imputation.
Kopiert!
1 
2PROC PRINT
3DATA=outex15(obs=10);
4title 'First 10 Observations of the Imputed
5Data Set';
6RUN;
7 
Dieses Material wird von We Are Cas "wie besehen" zur Verfügung gestellt. Es gibt keine ausdrücklichen oder stillschweigenden Garantien hinsichtlich der Marktgängigkeit oder Eignung für einen bestimmten Zweck in Bezug auf die hierin enthaltenen Materialien oder Codes. We Are Cas ist nicht verantwortlich für Fehler in diesem Material, wie es jetzt existiert oder existieren wird, noch bietet We Are Cas technischen Support dafür an.
Urheberrechtsinformationen : SAS SAMPLE LIBRARY