Veröffentlicht am :
Statistik CREATION_INTERNE

Zufallseffektmodell mit PROC MCMC

Dieser Code ist auch verfügbar auf: English Español Français
Wartet auf Validierung
Dieses SAS©-Skript veranschaulicht die Verwendung der MCMC-Prozedur zur Anpassung eines Zufallseffektmodells. Es erstellt zunächst einen Datensatz 'heights' mithilfe von `datalines` mit Informationen zu Familie, Geschlecht und Größe. Anschließend wird ein neuer Datensatz 'input' aus 'heights' erstellt, um das Geschlecht in eine binäre numerische Variable ('gf') zu kodieren. Die PROC MCMC wird dann verwendet, um ein normales Modell anzupassen, bei dem die Größe als Funktion des Geschlechts und eines familienspezifischen Zufallseffekts modelliert wird. A-priori-Verteilungen werden für die Modellparameter (Achsenabschnitt, Geschlechtskoeffizient, Varianzen) angegeben. Das Skript aktiviert und deaktiviert ODS-Grafiken zur Visualisierung der MCMC-Spuren.
Datenanalyse

Type : CREATION_INTERNE


Die Rohdaten werden direkt über eine `datalines`-Anweisung in das Skript integriert und bilden den Datensatz 'heights'. Dieser wird anschließend für die MCMC-Analyse in 'input' umgewandelt.

1 Codeblock
DATA STEP Data
Erklärung :
Dieser DATA STEP-Block initialisiert und füllt den Datensatz 'heights' direkt aus den im Skript bereitgestellten Daten über die `datalines`-Anweisung. Er definiert drei Variablen: 'Family' (numerisch), 'G' (Geschlecht, Zeichen) und 'Height' (numerisch).
Kopiert!
1DATA heights;
2 INPUT Family G$ Height;
3 DATALINES;
41 F 67
51 F 66
61 F 64
71 M 71
81 M 72
92 F 63
102 F 63
112 F 67
122 M 69
132 M 68
142 M 70
153 F 63
163 M 64
174 F 67
184 F 66
194 M 67
204 M 67
214 M 69
22;
23 
2 Codeblock
DATA STEP Data
Erklärung :
Dieser DATA STEP-Block erstellt einen neuen Datensatz namens 'input' durch Lesen von 'heights'. Er transformiert die kategoriale Variable 'G' (Geschlecht) in eine numerische Indikatorvariable 'gf' (1 für weiblich, 0 für männlich) und entfernt die ursprüngliche Variable 'G' für die weitere Analyse.
Kopiert!
1DATA INPUT;
2 SET heights;
3 IF g eq 'F' THEN gf = 1;
4 ELSE gf = 0;
5 drop g;
6RUN;
7 
3 Codeblock
ODS Statement
Erklärung :
Aktiviert das ODS (Output Delivery System) Grafiksystem, um die Generierung von hochauflösenden Grafiken durch SAS-Prozeduren zu ermöglichen.
Kopiert!
1ods graphics on;
2 
4 Codeblock
PROC MCMC
Erklärung :
Diese MCMC-Prozedur (Monte Carlo mittels Markov-Ketten) passt ein Zufallseffektmodell an den Datensatz 'input' an. Sie erzeugt einen Ausgabedatensatz 'postout', der die MCMC-Post-Samples enthält. Die Modellparameter werden initialisiert, und A-priori-Verteilungen werden für den Achsenabschnitt (b0), den Geschlechtskoeffizienten (b1), die Restvarianz (s2) und die Varianz der Zufallseffekte (s2g) angegeben. Ein Zufallseffekt 'gamma' wird für jede 'family' definiert. Das Modell spezifiziert, dass 'height' einer Normalverteilung mit einem Mittelwert 'mu' (Funktion der festen und zufälligen Effekte) und einer Varianz 's2' folgt. Die Anzahl der Iterationen (nmc) und der Zufalls-Seed sind festgelegt, und Trace-Plots werden angefordert.
Kopiert!
1PROC MCMC DATA=INPUT outpost=postout nmc=50000 seed=7893 plots=trace;
2 ods select Parameters REparameters PostSumInt tracepanel;
3 parms b0 0 b1 0 s2 1 s2g 1;
4 
5 prior b: ~ normal(0, var = 10000);
6 prior s: ~ igamma(0.01, scale = 0.01);
7 random gamma ~ normal(0, var = s2g) subject=family monitor=(gamma);
8 mu = b0 + b1 * gf + gamma;
9 model height ~ normal(mu, var = s2);
10RUN;
11 
5 Codeblock
ODS Statement
Erklärung :
Deaktiviert das ODS-Grafiksystem und stoppt somit die Generierung von Grafiken.
Kopiert!
1ods graphics off;
2 
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 : S A S S A M P L E L I B R A R Y, NAME: MCMCGS3, TITLE: Getting Started Example 3 for PROC MCMC, PRODUCT: STAT, SYSTEM: ALL, KEYS: random-effects model, PROCS: MCMC, DATA:, REF: PROC MCMC, GETTING STARTED EXAMPLE 3, MISC: