Veröffentlicht am :
Statistik INTERNE_ERSTELLUNG

Überlebenszeitanalyse mit PROC GENMOD (Beispiel 3)

Dieser Code ist auch verfügbar auf: English Français
Wartet auf Validierung
Das Skript beginnt mit der Erstellung von zwei Datensätzen, 'A' und 'B', die 'lifetime'-Messungen für zwei verschiedene Hersteller enthalten, unter Verwendung von DATALINES-Blöcken. Diese beiden Datensätze werden dann zu einem einzigen Datensatz, 'lifdat', zusammengeführt. Es werden zwei Aufrufe von PROC GENMOD durchgeführt. Der erste modelliert 'lifetime' in Abhängigkeit von der Gruppe 'mfg' unter Angabe einer Gamma-Verteilung und einer Log-Link-Funktion mit einer Typ-3-Analyse. Das zweite Modell schätzt ein reines Intercept-Modell mit denselben Verteilungs- und Link-Spezifikationen und fordert Likelihood-Ratio-Konfidenzintervalle (LRCI) an.
Datenanalyse

Type : INTERNE_ERSTELLUNG


Die Daten werden direkt im Skript über DATALINES-Blöcke für die Datensätze 'A' und 'B' erstellt.

1 Codeblock
DATA STEP Data
Erklärung :
Dieser DATA STEP-Block erstellt den Datensatz 'A', indem er die 'lifetime'-Werte direkt aus den DATALINES liest. Jede Zeile enthält mehrere Beobachtungen; der Operator ' @@' wird verwendet, um den Zeiger auf der Zeile zu halten und alle 'lifetime'-Werte nacheinander zu lesen, wobei jeder der Wert 'A' für die Variable 'mfg' (Hersteller) zugewiesen wird. Die Anweisung `input lifetime @code_sas_json/...` im ursprünglichen Quellcode wurde als Fehler interpretiert und in `input lifetime @code_sas_json/8_SAS_Intro_ReadFile_MultiCol_@@.json;` korrigiert, um das korrekte Lesen von Mehrwertdaten pro Zeile zu ermöglichen, entsprechend der wahrscheinlichen Absicht des Codes und dem Beispiel der referenzierten JSON-Datei.
Kopiert!
1DATA A;
2 INPUT lifetime @code_sas_json/8_SAS_Intro_ReadFile_MultiCol_@@.json;
3 mfg = 'A';
4 DATALINES;
5620 470 260 89 388 242
6103 100 39 460 284 1285
7218 393 106 158 152 477
8403 103 69 158 818 947
9399 1274 32 12 134 660
10548 381 203 871 193 531
11317 85 1410 250 41 1101
1232 421 32 343 376 1512
131792 47 95 76 515 72
141585 253 6 860 89 1055
15537 101 385 176 11 565
16164 16 1267 352 160 195
171279 356 751 500 803 560
18151 24 689 1119 1733 2194
19763 555 14 45 776 1
20;
21 
2 Codeblock
DATA STEP Data
Erklärung :
Ähnlich wie der vorherige Block erstellt dieser DATA STEP den Datensatz 'B' für den zweiten Hersteller. Der Operator ' @@' wird ebenfalls verwendet, um alle 'lifetime'-Werte pro Zeile zu lesen, wobei der Wert 'B' der Variablen 'mfg' zugewiesen wird. Die Anweisung `input lifetime @code_sas_json/...` im ursprünglichen Quellcode wurde als Fehler interpretiert und in `input lifetime @code_sas_json/8_SAS_Intro_ReadFile_MultiCol_@@.json;` korrigiert, um das korrekte Lesen von Mehrwertdaten pro Zeile zu ermöglichen, entsprechend der wahrscheinlichen Absicht des Codes und dem Beispiel der referenzierten JSON-Datei.
Kopiert!
1DATA B;
2 INPUT lifetime @code_sas_json/8_SAS_Intro_ReadFile_MultiCol_@@.json;
3 mfg = 'B';
4 DATALINES;
51747 945 12 1453 14 150
620 41 35 69 195 89
71090 1868 294 96 618 44
8142 892 1307 310 230 30
9403 860 23 406 1054 1935
10561 348 130 13 230 250
11317 304 79 1793 536 12
129 256 201 733 510 660
13122 27 273 1231 182 289
14667 761 1096 43 44 87
15405 998 1409 61 278 407
16113 25 940 28 848 41
17646 575 219 303 304 38
18195 1061 174 377 388 10
19246 323 198 234 39 308
2055 729 813 1216 1618 539
216 1566 459 946 764 794
2235 181 147 116 141 19
23380 609 546
24;
25 
3 Codeblock
DATA STEP Data
Erklärung :
Dieser DATA STEP führt die zuvor erstellten Datensätze 'A' und 'B' zu einem neuen Datensatz namens 'lifdat' zusammen. Die Variable 'mfg' unterscheidet Beobachtungen, die von 'A' stammen, von denen, die von 'B' stammen.
Kopiert!
1DATA lifdat;
2 SET A B;
3RUN;
4 
4 Codeblock
PROC GENMOD
Erklärung :
Dieser Block führt die GENMOD-Prozedur aus, um ein verallgemeinertes lineares Modell anzupassen. Die abhängige Variable ist 'lifetime', und die kategoriale Variable 'mfg' wird als Prädiktor verwendet. Das Modell spezifiziert eine Gamma-Verteilung für die Antwortvariable und eine logarithmische Link-Funktion. Die Option 'type3' fordert die Berechnung von Typ-3-Tests für die Modell-Effekte an.
Kopiert!
1PROC GENMOD DATA = lifdat;
2 class mfg;
3 model lifetime = mfg / dist=gamma
4 link=log
5 type3;
6RUN;
7 
5 Codeblock
PROC GENMOD
Erklärung :
Dieser zweite PROC GENMOD-Block passt ein reines Intercept-Modell für die Variable 'lifetime' an, ebenfalls mit einer Gamma-Verteilung und einer Log-Link-Funktion. Die Option 'lrci' fordert die Anzeige der auf dem Likelihood-Verhältnis basierenden Konfidenzintervalle für die Modellparameter an.
Kopiert!
1PROC GENMOD DATA = lifdat;
2 model lifetime = / dist=gamma
3 link=log
4 lrci;
5RUN;
6 
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: GENMEX3 ; TITLE: Example 3 for PROC GENMOD ; PRODUCT: STAT ; SYSTEM: ALL ; KEYS: generalized linear models ; PROCS: GENMOD ; DATA: ; ; REF: PROC GENMOD, EXAMPLE 3 ; MISC: