Chapter Contents |
Previous |
Next |
The PHREG Procedure |
Time-dependent variables can be used to model the effects of subjects transferring from one treatment group to another. One example of the need for such strategies is the Stanford heart transplant program. Patients are accepted if physicians judge them suitable for heart transplant. Then, when a donor becomes available, physicians choose transplant recipients according to various medical criteria. A patient's status can be changed during the study from waiting for a transplant to transplant recipient. Transplant status can be defined by the time-dependent covariate function z=z(t) as
The input data contains dates that have a two-digit year representation. The SAS option YEARCUTOFF=1900 is specified to ensure that a two-digit year xx is year 19xx.
The code is as follows:
options yearcutoff=1900; data Heart; input ID @5 Bir_Date mmddyy8. @14 Acc_Date mmddyy8. @23 Xpl_Date mmddyy8. @32 Ter_Date mmddyy8. @41 Status 1. @43 PrevSurg 1. @45 NMismatch 1. @47 Antigen 1. @49 Mismatch 4. @54 Reject 1. @56 NotTyped $1.; label Bir_Date ='Date of birth' Acc_Date ='Date of acceptance' Xpl_Date ='Date of transplant' Ter_Date ='Date last seen' Status = 'Dead=1 Alive=0' PrevSurg ='Previous surgery' NMismatch= 'No of mismatches' Antigen = 'HLA-A2 antigen' Mismatch ='Mismatch score' NotTyped = 'y=not tissue-typed'; Time= Ter_Date - Acc_Date; Acc_Age=int( (Acc_Date - Bir_Date)/365 ); if ( Xpl_Date ne .) then do; WaitTime= Xpl_Date - Acc_Date; Xpl_Age= int( (Xpl_Date - Bir_Date)/365 ); end; datalines; 1 01 10 37 11 15 67 01 03 68 1 0 2 03 02 16 01 02 68 01 07 68 1 0 3 09 19 13 01 06 68 01 06 68 01 21 68 1 0 2 0 1.11 0 4 12 23 27 03 28 68 05 02 68 05 05 68 1 0 3 0 1.66 0 5 07 28 47 05 10 68 05 27 68 1 0 6 11 18 13 06 13 68 06 15 68 1 0 7 08 29 17 07 12 68 08 31 68 05 17 70 1 0 4 0 1.32 1 8 03 27 23 08 01 68 09 09 68 1 0 9 06 11 21 08 09 68 11 01 68 1 0 10 02 09 26 08 11 68 08 22 68 10 07 68 1 0 2 0 0.61 1 11 08 22 20 08 15 68 09 09 68 01 14 69 1 0 1 0 0.36 0 12 07 09 15 09 17 68 09 24 68 1 0 13 02 22 14 09 19 68 10 05 68 12 08 68 1 0 3 0 1.89 1 14 09 16 14 09 20 68 10 26 68 07 07 72 1 0 1 0 0.87 1 15 12 04 14 09 27 68 09 27 68 1 1 16 05 16 19 10 26 68 11 22 68 08 29 69 1 0 2 0 1.12 1 17 06 29 48 10 28 68 12 02 68 1 0 18 12 27 11 11 01 68 11 20 68 12 13 68 1 0 3 0 2.05 0 19 10 04 09 11 18 68 12 24 68 1 0 20 10 19 13 01 29 69 02 15 69 02 25 69 1 0 3 1 2.76 1 21 09 29 25 02 01 69 02 08 69 11 29 71 1 0 2 0 1.13 1 22 06 05 26 03 18 69 03 29 69 05 07 69 1 0 3 0 1.38 1 23 12 02 10 04 11 69 04 13 69 04 13 71 1 0 3 0 0.96 1 24 07 07 17 04 25 69 07 16 69 11 29 69 1 0 3 1 1.62 1 25 02 06 36 04 28 69 05 22 69 04 01 74 0 0 2 0 1.06 0 26 10 18 38 05 01 69 03 01 73 0 0 27 07 21 60 05 04 69 01 21 70 1 0 28 05 30 15 06 07 69 08 16 69 08 17 69 1 0 2 0 0.47 0 29 02 06 19 07 14 69 08 17 69 1 0 30 09 20 24 08 19 69 09 03 69 12 18 71 1 0 4 0 1.58 1 31 10 04 14 08 23 69 09 07 69 1 0 32 04 02 05 08 29 69 09 14 69 11 13 69 1 0 4 0 0.69 1 33 01 01 21 11 27 69 01 16 70 04 01 74 0 0 3 0 0.91 0 34 05 24 29 12 12 69 01 03 70 04 01 74 0 0 2 0 0.38 0 35 08 04 26 01 21 70 02 01 70 1 0 36 05 01 21 04 04 70 05 19 70 07 12 70 1 0 2 0 2.09 1 37 10 24 08 04 25 70 05 13 70 06 29 70 1 0 3 1 0.87 1 38 11 14 28 05 05 70 05 09 70 05 09 70 1 0 3 0 0.87 0 39 11 12 19 05 20 70 05 21 70 07 11 70 1 0 y 40 11 30 21 05 25 70 07 04 70 04 01 74 0 1 4 0 0.75 0 41 04 30 25 08 19 70 10 15 70 04 01 74 0 1 2 0 0.98 0 42 03 13 34 08 21 70 08 23 70 1 0 43 06 01 27 10 22 70 10 23 70 1 1 44 05 02 28 11 30 70 01 08 71 1 1 45 10 30 34 01 05 71 01 05 71 02 18 71 1 0 1 0 0.0 0 46 06 01 22 01 10 71 01 11 71 10 01 73 1 1 2 0 0.81 1 47 12 28 23 02 02 71 02 22 71 04 14 71 1 0 3 0 1.38 1 48 01 23 15 02 05 71 02 13 71 1 0 49 06 21 34 02 15 71 03 22 71 04 01 74 0 1 4 0 1.35 0 50 03 28 25 02 15 71 05 08 71 10 21 73 1 1 y 51 06 29 22 03 24 71 04 24 71 01 02 72 1 0 4 1 1.08 1 52 01 24 30 04 25 71 08 04 71 1 0 53 02 27 24 07 02 71 08 11 71 01 05 72 1 0 y 54 09 16 23 07 02 71 07 04 71 1 0 55 02 24 19 08 09 71 08 18 71 10 08 71 1 0 2 0 1.51 1 56 12 05 32 09 03 71 11 08 71 04 01 74 0 0 4 0 0.98 0 57 06 08 30 09 13 71 02 08 72 1 0 58 09 17 23 09 23 71 10 13 71 08 30 72 1 1 2 1 1.82 1 59 05 12 30 09 29 71 12 15 71 04 01 74 0 1 2 0 0.19 0 60 10 29 22 11 18 71 11 20 71 01 09 72 1 0 3 0 0.66 1 61 05 12 19 12 04 71 12 05 71 1 0 62 08 01 32 12 09 71 02 15 72 1 0 63 04 15 39 12 12 71 01 07 72 04 01 74 0 0 3 1 1.93 0 64 04 09 23 02 01 72 03 04 72 09 06 73 1 1 1 0 0.12 0 65 11 19 20 03 06 72 03 17 72 05 22 72 1 0 2 0 1.12 1 66 01 02 19 03 20 72 04 20 72 1 0 67 09 03 52 03 23 72 05 18 72 01 01 73 1 0 3 0 1.02 0 68 01 10 27 04 07 72 04 09 72 06 13 72 1 0 3 1 1.68 1 69 06 05 24 06 01 72 06 10 72 04 01 74 0 0 2 0 1.20 0 70 06 17 19 06 17 72 06 21 72 07 16 72 1 0 3 1 1.68 1 71 02 22 25 07 21 72 08 20 72 04 01 74 0 0 3 0 0.97 0 72 11 22 45 08 14 72 08 17 72 04 01 74 0 0 3 1 1.46 0 73 05 13 16 09 11 72 10 07 72 12 09 72 1 0 3 1 2.16 1 74 07 20 43 09 18 72 09 22 72 10 04 72 1 0 1 0 0.61 0 75 07 25 20 09 29 72 09 30 72 1 0 76 09 03 20 10 04 72 11 18 72 04 01 74 0 1 3 1 1.70 0 77 08 27 31 10 06 72 10 26 72 1 0 78 02 20 24 11 03 72 05 31 73 04 01 74 0 0 3 0 0.81 0 79 02 18 19 11 30 72 02 04 73 03 05 73 1 0 2 0 1.08 1 80 06 27 26 12 06 72 12 31 72 04 01 74 0 1 3 0 1.41 0 81 02 21 20 01 12 73 01 17 73 04 01 74 0 0 4 1 1.94 0 82 09 19 42 11 01 71 01 01 73 0 0 83 10 04 19 01 24 73 02 24 73 04 13 73 1 0 4 0 3.05 0 84 05 13 30 01 30 73 03 07 73 12 29 73 1 0 4 0 0.60 1 85 02 13 25 02 06 73 02 10 73 1 0 86 03 30 24 03 01 73 03 08 73 04 01 74 0 0 3 1 1.44 0 87 12 19 26 03 21 73 05 19 73 07 08 73 1 0 2 0 2.25 1 88 11 16 18 03 28 73 04 27 73 04 01 74 0 0 3 0 0.68 0 89 03 19 22 04 05 73 08 21 73 10 28 73 1 0 4 1 1.33 1 90 03 25 21 04 06 73 09 12 73 10 08 73 1 1 3 1 0.82 0 91 09 08 25 04 13 73 03 18 74 1 0 92 05 03 28 04 27 73 03 02 74 04 01 74 0 0 1 0 0.16 0 93 10 10 25 07 11 73 08 07 73 04 01 74 0 0 2 0 0.33 0 94 11 11 29 09 14 73 09 17 73 02 25 74 1 1 3 0 1.20 1 95 06 11 33 09 22 73 09 23 73 10 07 73 1 0 y 96 02 09 47 10 04 73 10 16 73 04 01 74 0 0 2 0 0.46 0 97 04 11 50 11 22 73 12 12 73 04 01 74 0 0 3 1 1.78 0 98 04 28 45 12 14 73 03 19 74 04 01 74 0 0 4 1 0.77 0 99 02 24 24 12 25 73 01 14 74 1 0 100 01 31 39 02 22 74 03 31 74 04 01 74 0 1 3 0 0.67 0 101 08 25 24 03 02 74 04 01 74 0 0 102 10 30 33 03 22 74 04 01 74 0 0 103 05 20 28 09 13 67 09 18 67 1 0 ;
Crowley and Hu (1977) have presented a number of analyses to assess the effects of various explanatory variables on the survival of patients. This example fits two of the models that they have considered.
The first model consists of two explanatory variables -the transplant status and the age at acceptance. The transplant status (XStatus) is a time-dependent variable defined by the programming statements between the MODEL statement and the RUN statement. The XStatus variable takes the value 1 or 0 at time (measured from the date of acceptance), depending on whether or not the patient has received a transplant at that time. Note that the value of XStatus changes for subjects in each risk set (subjects still alive just before each distinct event time); therefore, the variable cannot be created in the DATA step. The variable Acc_Age, which is not time-dependent, accounts for the possibility that pretransplant risks vary with age.
proc phreg data= Heart; model Time*Status(0)= XStatus Acc_Age; if (WaitTime = . or Time < WaitTime) then XStatus=0.; else XStatus= 1.0; run;Output 49.4.1: Heart Transplant Study Analysis I
|
Results of this analysis are shown in Output 49.4.1. Transplantation appears to be associated with a slight decrease in risk, although the effect is not significant (p=0.8432). The age at acceptance as a pretransplant risk factor adds significantly to the model (p=0.0294). The risk increases significantly with age at acceptance.
The second model consists of three explanatory variables -the transplant status, the transplant age, and the mismatch score. Four transplant recipients who were not typed have no Mismatch values; they are excluded from the analysis by the use of a WHERE clause. The transplant age (XAge) and the mismatch score (XScore) are also time-dependent and are defined in a fashion similar to that of XStatus. While the patient is waiting for a transplant, XAge and XScore have a value of 0. After the patient has migrated to the recipient population, XAge takes on the value of Xpl_Age (transplant age for the recipient), and XScore takes on the value of Mismatch (a measure of the degree of dissimilarity between donor and recipient).
proc phreg data= Heart; model Time*Status(0)= XStatus XAge XScore; where NotTyped ^= 'y'; if (WaitTime = . or Time < WaitTime) then do; XStatus=0.; XAge=0.; XScore= 0.; end; else do; XStatus= 1.0; XAge= Xpl_Age; XScore= Mismatch; end; run;Output 49.4.2: Heart Transplant Study Analysis II
|
Chapter Contents |
Previous |
Next |
Top |
Copyright © 1999 by SAS Institute Inc., Cary, NC, USA. All rights reserved.