File: bladder.Rout.save

package info (click to toggle)
survival 3.8-6-1
  • links: PTS, VCS
  • area: main
  • in suites: sid
  • size: 15,496 kB
  • sloc: ansic: 8,088; makefile: 77
file content (153 lines) | stat: -rw-r--r-- 6,283 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153

R Under development (unstable) (2024-04-17 r86441) -- "Unsuffered Consequences"
Copyright (C) 2024 The R Foundation for Statistical Computing
Platform: aarch64-unknown-linux-gnu

R is free software and comes with ABSOLUTELY NO WARRANTY.
You are welcome to redistribute it under certain conditions.
Type 'license()' or 'licence()' for distribution details.

R is a collaborative project with many contributors.
Type 'contributors()' for more information and
'citation()' on how to cite R or R packages in publications.

Type 'demo()' for some demos, 'help()' for on-line help, or
'help.start()' for an HTML browser interface to help.
Type 'q()' to quit R.

> options(na.action=na.exclude) # preserve missings
> options(contrasts=c('contr.treatment', 'contr.poly'),
+                      show.signif.stars=FALSE) #ensure constrast type
> library(survival)
> 
> #
> # Fit the models found in Wei et. al.
> #
> wfit <- coxph(Surv(stop, event) ~ (rx + size + number)* strata(enum),
+ 		 cluster=id, bladder, ties='breslow')
> wfit
Call:
coxph(formula = Surv(stop, event) ~ (rx + size + number) * strata(enum), 
    data = bladder, ties = "breslow", cluster = id)

                              coef exp(coef) se(coef) robust se      z       p
rx                        -0.51762   0.59594  0.31576   0.30750 -1.683 0.09231
size                       0.06789   1.07025  0.10125   0.08529  0.796 0.42602
number                     0.23599   1.26617  0.07608   0.07208  3.274 0.00106
rx:strata(enum)enum=2     -0.10182   0.90319  0.50427   0.32654 -0.312 0.75518
rx:strata(enum)enum=3     -0.18226   0.83339  0.55790   0.39162 -0.465 0.64165
rx:strata(enum)enum=4     -0.13317   0.87531  0.65813   0.49680 -0.268 0.78865
size:strata(enum)enum=2   -0.14401   0.86588  0.16800   0.11190 -1.287 0.19812
size:strata(enum)enum=3   -0.27920   0.75639  0.20862   0.15115 -1.847 0.06472
size:strata(enum)enum=4   -0.27106   0.76257  0.25146   0.18563 -1.460 0.14422
number:strata(enum)enum=2 -0.09843   0.90625  0.11931   0.11439 -0.861 0.38951
number:strata(enum)enum=3 -0.06616   0.93598  0.12983   0.11672 -0.567 0.57083
number:strata(enum)enum=4  0.09280   1.09724  0.14657   0.11754  0.790 0.42982

Likelihood ratio test=29.39  on 12 df, p=0.003443
n= 340, number of events= 112 
> 
> # Check the rx coefs versus Wei, et al, JASA 1989
> rx <- c(1,4,5,6)  # the treatment coefs above
> cmat <- diag(4); cmat[1,] <- 1;          #contrast matrix
> wfit$coefficients[rx] %*% cmat           # the coefs in their paper (table 5)
           [,1]       [,2]       [,3]       [,4]
[1,] -0.5176209 -0.6194404 -0.6998771 -0.6507935
> t(cmat) %*% wfit$var[rx,rx] %*% cmat  # var matrix (eqn 3.2)
           [,1]       [,2]       [,3]      [,4]
[1,] 0.09455501 0.06017669 0.05677331 0.0437777
[2,] 0.06017669 0.13242834 0.13011557 0.1160420
[3,] 0.05677331 0.13011557 0.17235879 0.1590865
[4,] 0.04377770 0.11604200 0.15908650 0.2398112
> 
> # Anderson-Gill fit
> fita <- coxph(Surv(start, stop, event) ~ rx + size + number, cluster=id,
+ 		  bladder2,  ties='breslow')
> summary(fita)
Call:
coxph(formula = Surv(start, stop, event) ~ rx + size + number, 
    data = bladder2, ties = "breslow", cluster = id)

  n= 178, number of events= 112 

           coef exp(coef) se(coef) robust se      z Pr(>|z|)
rx     -0.45979   0.63142  0.19996   0.25801 -1.782  0.07474
size   -0.04256   0.95833  0.06903   0.07555 -0.563  0.57317
number  0.17164   1.18726  0.04733   0.06131  2.799  0.00512

       exp(coef) exp(-coef) lower .95 upper .95
rx        0.6314     1.5837    0.3808     1.047
size      0.9583     1.0435    0.8264     1.111
number    1.1873     0.8423    1.0528     1.339

Concordance= 0.634  (se = 0.032 )
Likelihood ratio test= 16.77  on 3 df,   p=8e-04
Wald test            = 11.76  on 3 df,   p=0.008
Score (logrank) test = 18.57  on 3 df,   p=3e-04,   Robust = 11.44  p=0.01

  (Note: the likelihood ratio and score tests assume independence of
     observations within a cluster, the Wald and robust score tests do not).
> 
> # Prentice fits.  Their model 1 a and b are the same
> fit1p  <- coxph(Surv(stop, event) ~ rx + size + number, bladder2,
+ 		subset=(enum==1), ties='breslow')
> fit2pa <- coxph(Surv(stop, event) ~ rx + size + number, bladder2,
+ 		subset=(enum==2), ties='breslow')
> fit2pb <- coxph(Surv(stop-start,  event) ~ rx + size + number, bladder2,
+ 		   subset=(enum==2), ties='breslow')
> fit3pa <- coxph(Surv(stop, event) ~ rx + size + number, bladder2,
+ 		subset=(enum==3), ties='breslow')
>  #and etc.
> fit1p
Call:
coxph(formula = Surv(stop, event) ~ rx + size + number, data = bladder2, 
    subset = (enum == 1), ties = "breslow")

           coef exp(coef) se(coef)      z       p
rx     -0.51762   0.59594  0.31576 -1.639 0.10115
size    0.06789   1.07025  0.10125  0.671 0.50253
number  0.23599   1.26617  0.07608  3.102 0.00192

Likelihood ratio test=9.66  on 3 df, p=0.02164
n= 85, number of events= 47 
> fit2pa
Call:
coxph(formula = Surv(stop, event) ~ rx + size + number, data = bladder2, 
    subset = (enum == 2), ties = "breslow")

            coef exp(coef)  se(coef)      z     p
rx     -0.424214  0.654284  0.402200 -1.055 0.292
size   -0.125033  0.882467  0.117088 -1.068 0.286
number  0.001987  1.001989  0.093760  0.021 0.983

Likelihood ratio test=2.02  on 3 df, p=0.5688
n= 46, number of events= 29 
> fit2pb
Call:
coxph(formula = Surv(stop - start, event) ~ rx + size + number, 
    data = bladder2, subset = (enum == 2), ties = "breslow")

            coef exp(coef)  se(coef)      z     p
rx     -0.259112  0.771737  0.405110 -0.640 0.522
size   -0.116363  0.890152  0.119236 -0.976 0.329
number -0.005709  0.994307  0.096671 -0.059 0.953

Likelihood ratio test=1.27  on 3 df, p=0.7353
n= 46, number of events= 29 
> fit3pa
Call:
coxph(formula = Surv(stop, event) ~ rx + size + number, data = bladder2, 
    subset = (enum == 3), ties = "breslow")

           coef exp(coef) se(coef)      z     p
rx     -0.89854   0.40716  0.55352 -1.623 0.105
size    0.08497   1.08869  0.20861  0.407 0.684
number -0.01716   0.98298  0.12802 -0.134 0.893

Likelihood ratio test=4.16  on 3 df, p=0.2452
n= 27, number of events= 22 
> rm(rx, cmat, wfit, fita, fit1p, fit2pa, fit2pb, fit3pa)
> 
> proc.time()
   user  system elapsed 
  0.398   0.023   0.419