Veröffentlicht am :
Statistik CREATION_INTERNE

Zero-Inflated Poisson-Regression mit PROC HPFMM

Dieser Code ist auch verfügbar auf: English Español Français
Wartet auf Validierung
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!
1DATA catch;
2 INPUT gender $ age count @code_sas_json/8_SAS_Intro_ReadFile_MultiCol_@@.json;
3 DATALINES;
4 F 54 18 M 37 0 F 48 12 M 27 0
5 M 55 0 M 32 0 F 49 12 F 45 11
6 M 39 0 F 34 1 F 50 0 M 52 4
7 M 33 0 M 32 0 F 23 1 F 17 0
8 F 44 5 M 44 0 F 26 0 F 30 0
9 F 38 0 F 38 0 F 52 18 M 23 1
10 F 23 0 M 32 0 F 33 3 M 26 0
11 F 46 8 M 45 5 M 51 10 F 48 5
12 F 31 2 F 25 1 M 22 0 M 41 0
13 M 19 0 M 23 0 M 31 1 M 17 0
14 F 21 0 F 44 7 M 28 0 M 47 3
15 M 23 0 F 29 3 F 24 0 M 34 1
16 F 19 0 F 35 2 M 39 0 M 43 6
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!
1PROC HPFMM DATA=catch;
2 class gender;
3 model count = gender*age / dist=Poisson;
4RUN;
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!
1PROC HPFMM DATA=catch;
2 class gender;
3 model count = gender*age / dist=Poisson ;
4 model + / dist=Constant;
5RUN;
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!
1PROC HPFMM DATA=catch seed=12345;
2 class gender;
3 model count = gender*age / dist=Poisson;
4 model + / dist=constant;
5 performance nthreads=2;
6 bayes;
7RUN;
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!
1ods graphics on;
2ods select TADPanel;
3PROC HPFMM DATA=catch seed=12345;
4 class gender;
5 model count = gender*age / dist=Poisson;
6 model + / dist=constant;
7 performance nthreads=2;
8 bayes;
9RUN;
10ods 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