Competing risks

Therneau, Terry M., Ph.D. (
Tue, 27 Jan 1998 07:57:58 -0600

It's actually quite easy.

Assume a data set with n subjects and 4 types of competing events. Then
create a data set with 4n observations
First n obs: the data set you would create for an analysis of
"time to event type 1", where all other event types are censored. An
extra variable "etype" is =1.
Second n obs: the data set you would create for "time to event type 2",
with etype=2

fit <- coxph(Surv(time,status) ~ .... + strata(etype), ....

1. Wei, Lin, and Weissfeld apply this to data sets where the competing
risks are not necessarily exclusive, i.e., time to progression and time
to death for cancer patients. JASA 1989, 1065-1073. If a given subject
can have more than one "event", then you need to use the sandwich estimate
of variance, obtained by adding ".. + cluster(id).." to the model
statement above, where "id" is variable unique to each subject.
(The method of fitting found in WLW, namely to do individual fits and
then glue the results together, is not necessary).

2. If a given subject can have at most one event, then it is not clear
that the sandwich estimate of variance is necessary. See Lunn and McNeil,
Biometrics (year?) for an example.

3. The covariates can be coded any way you like. WLW put in all of the
strata * covariate interactions for instance (the "x" coef is different for
each event type), but I never seem to have a big enough sample to justify
doing this. Lunn and McNeil use a certain coding of the treatment effect,
so that the betas are a contrast of interest to them; I've used similar things
but never that particular one.

4. "etype" doesn't have to be 1,2,3,... of course; etype= 'paper',
'scissors', 'stone', 'pc' would work as well.

Terry M. Therneau, Ph.D. (507) 284-3694
Head, Section of Biostatistics (507) 284-9542 FAX
Mayo Clinic
Rochester, Minn 55905