Dieses Skript demonstriert mehrere Aspekte der PROC HPFMM. Es beginnt mit der Erstellung einer 'catch'-Datentabelle, die demografische Variablen und eine Zählvariable 'count' enthält. Anschließend werden schrittweise komplexere Modelle angewendet: ein grundlegendes Poisson-Modell, ein 'Zero-Inflated' Poisson-Mischmodell zur Berücksichtigung eines Überschusses an Nullen und schließlich eine Bayessche Analyse des letzteren Modells. Das Skript zeigt auch, wie die Ausführung optimiert (nthreads) und spezifische Grafiken (ODS Graphics) generiert werden können.
Datenanalyse
Type : CREATION_INTERNE
Die Daten werden vollständig im Skript über einen DATA-Schritt mit einer DATALINES-Anweisung generiert und sind darin enthalten.
1 Codeblock
DATA STEP Data
Erklärung : Dieser Block erstellt die 'catch'-Tabelle aus internen Daten. Die 'input'-Anweisung liest die Variablen 'gender', 'age' und 'count'. Das doppelte 'at' ( @code_sas_json/8_SAS_Intro_ReadFile_MultiCol_@@.json) weist SAS an, mehrere Beobachtungen aus derselben Datenzeile zu lesen.
Kopiert!
data catch;
input gender $ age count @code_sas_json/8_SAS_Intro_ReadFile_MultiCol_@@.json;
datalines;
F 54 18 M 37 0 F 48 12 M 27 0
M 55 0 M 32 0 F 49 12 F 45 11
M 39 0 F 34 1 F 50 0 M 52 4
M 33 0 M 32 0 F 23 1 F 17 0
F 44 5 M 44 0 F 26 0 F 30 0
F 38 0 F 38 0 F 52 18 M 23 1
F 23 0 M 32 0 F 33 3 M 26 0
F 46 8 M 45 5 M 51 10 F 48 5
F 31 2 F 25 1 M 22 0 M 41 0
M 19 0 M 23 0 M 31 1 M 17 0
F 21 0 F 44 7 M 28 0 M 47 3
M 23 0 F 29 3 F 24 0 M 34 1
F 19 0 F 35 2 M 39 0 M 43 6
;
1
DATA catch;
2
INPUT gender $ age count @code_sas_json/8_SAS_Intro_ReadFile_MultiCol_@@.json;
3
DATALINES;
4
F 5418 M 37 0 F 4812 M 27 0
5
M 55 0 M 32 0 F 4912 F 4511
6
M 39 0 F 341 F 50 0 M 524
7
M 33 0 M 32 0 F 231 F 17 0
8
F 445 M 44 0 F 26 0 F 30 0
9
F 38 0 F 38 0 F 5218 M 231
10
F 23 0 M 32 0 F 333 M 26 0
11
F 468 M 455 M 5110 F 485
12
F 312 F 251 M 22 0 M 41 0
13
M 19 0 M 23 0 M 311 M 17 0
14
F 21 0 F 447 M 28 0 M 473
15
M 23 0 F 293 F 24 0 M 341
16
F 19 0 F 352 M 39 0 M 436
17
;
2 Codeblock
PROC HPFMM
Erklärung : Dieser Block führt ein erstes einfaches Poisson-Regressionsmodell aus. Die Variable 'count' wird in Abhängigkeit von der Interaktion zwischen 'gender' und 'age' modelliert.
Kopiert!
proc hpfmm data=catch;
class gender;
model count = gender*age / dist=Poisson;
run;
1
PROC HPFMMDATA=catch;
2
class gender;
3
model count = gender*age / dist=Poisson;
4
RUN;
3 Codeblock
PROC HPFMM
Erklärung : Dieser Block passt ein Zweikomponenten-Mischmodell an, bekannt als 'Zero-Inflated' (ZI) Poisson-Modell. Die erste MODEL-Anweisung spezifiziert die Poisson-Komponente, und die zweite MODEL mit 'dist=Constant' fügt eine Komponente hinzu, die den Überschuss an Nullen modelliert.
Kopiert!
proc hpfmm data=catch;
class gender;
model count = gender*age / dist=Poisson ;
model + / dist=Constant;
run;
1
PROC HPFMMDATA=catch;
2
class gender;
3
model count = gender*age / dist=Poisson ;
4
model + / dist=Constant;
5
RUN;
4 Codeblock
PROC HPFMM
Erklärung : Dieser Block führt eine Bayessche Analyse des 'Zero-Inflated' Poisson-Modells durch. Die 'BAYES'-Anweisung fordert die Bayessche Inferenz für die Modellparameter an. 'PERFORMANCE NTHREADS=2' wird verwendet, um die Berechnung durch die Nutzung von zwei Threads zu beschleunigen.
Kopiert!
proc hpfmm data=catch seed=12345;
class gender;
model count = gender*age / dist=Poisson;
model + / dist=constant;
performance nthreads=2;
bayes;
run;
1
PROC HPFMMDATA=catch seed=12345;
2
class gender;
3
model count = gender*age / dist=Poisson;
4
model + / dist=constant;
5
performance nthreads=2;
6
bayes;
7
RUN;
5 Codeblock
PROC HPFMM
Erklärung : Dieser letzte Block führt die Bayessche Analyse erneut aus, aktiviert jedoch die Generierung von Grafiken über 'ODS GRAPHICS ON'. 'ODS SELECT TADPanel' filtert die Ausgabe, um nur das Panel für Bayessche Diagnosegrafiken (Trace, Autokorrelation, Dichte) anzuzeigen.
Kopiert!
ods graphics on;
ods select TADPanel;
proc hpfmm data=catch seed=12345;
class gender;
model count = gender*age / dist=Poisson;
model + / dist=constant;
performance nthreads=2;
bayes;
run;
ods graphics off;
1
ods graphics on;
2
ods select TADPanel;
3
PROC HPFMMDATA=catch seed=12345;
4
class gender;
5
model count = gender*age / dist=Poisson;
6
model + / dist=constant;
7
performance nthreads=2;
8
bayes;
9
RUN;
10
ods graphics off;
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
SAS und alle anderen Produkt- oder Dienstleistungsnamen von SAS Institute Inc. sind eingetragene Marken oder Marken von SAS Institute Inc. in den USA und anderen Ländern. ® zeigt die Registrierung in den USA an. WeAreCAS ist eine unabhängige Community-Site und nicht mit SAS Institute Inc. verbunden.
Diese Website verwendet technische und analytische Cookies, um Ihre Erfahrung zu verbessern.
Mehr erfahren.