[R] Direct adjusted survival?

Peter Jepsen PJ at DCE.AU.DK
Thu Jan 31 19:29:01 CET 2008

Dear Terry Therneau:

Thank you for replying. Please forgive me for carrying on. 

Here is the example I gave, now with some output shown:


coxph(formula = Surv(time, status) ~ edtrt, data = pbc)

      coef exp(coef) se(coef)    z p
edtrt 2.22      9.22    0.241 9.22 0

Likelihood ratio test=61.1  on 1 df, p=5.44e-15  n= 418

m # log(bili) is a strong confounder

coxph(formula = Surv(time, status) ~ edtrt + log(bili), data = pbc)

           coef exp(coef) se(coef)     z       p
edtrt     1.435      4.20   0.2495  5.75 8.9e-09
log(bili) 0.895      2.45   0.0807 11.10 0.0e+00

Likelihood ratio test=181  on 2 df, p=0  n= 418


If I understand the PBC-dataset correctly, the 'edtrt'-variable is not
treatment, but edema score. Unlike in the survexp-example, I do not use
the 'trt' variable in my example at all. What I meant by "strong
confounding" was the change in the HR for edema, from 9.22 without
adjustment for log(bili) to 4.20 with adjustment. I have read your book
several times, but I left it at work, and Google Print doesn't show page
281, where I believe that "direct-adjusted survival" is mentioned. Also,
if I remember correctly, the entire chapter 10 concernes using rates
from one population to predict rates in another population. If a revised
version of your book is forthcoming, as I strongly hope, I would love to
see a discussion of how the Ederer method can be used to adjust for
confounding, as in the above example where I (am trying to) plot the
survival probabilities for the three edema groups, as they would have
been if they all had the same bilirubin distribution. I'm in over my
head here, so please forgive me if I'm overlooking something obvious.

Best regards,

-----Oprindelig meddelelse-----
Fra: Terry Therneau [mailto:therneau at mayo.edu] 
Sendt: 31. januar 2008 15:52
Til: Peter Jepsen
Cc: r-help at r-project.org
Emne: Re: Direct adjusted survival?

> The lines that I hoped to be the survival probabilities for each
> adjusted for confounding by log(bili) are nearly identical to the
> and they certainly don't appear adjusted for the very strong
confounding by
> log(bili). I'm not quite sure what they are, though.

   Yes, survexp will fit direct adjusted curves (and also the Hakulinen
conditional methods).  For your example, I would expect that the
Kaplan-Meier curves for treatment 1 vs 2 should be almost identical to
adjusted curves for treatment 1 vs 2.  The PBC data is from a randomized
the two treatment arms are (not surprisingly) very well balanced with
to bilirubin values, and so adjusting for imbalance makes no real
change.  This
is exactly what the survexp code that you gave does. 
   If you are expected the curves to change, then I guess I'm not sure
what you
mean by "strong confounding".  Bilirubin is perhaps the most important
measure of severity for any of the cholestatic liver diseases, of which
PBC is
one; but being a strong predictor of mortality does not necessarily
   Standard errors for the direct curve are daunting -- it is several
pages of
code in a Gail and Benichou (?) paper.  I need to create an example for
this with the bootstrap.  One problem is the two sources of variation.
original Cox model's curves have variance of course, but do we consider
population of subjects being averaged over (for the DA curve) to be
fixed or

   For a long explanation of expected survival I would refer you to
chapter 10
of Therneau and Grambsch, "Modeling Survival Data".  One of the more
aspects is that things get re-discovered and renamed, the "direct
survival" curve for instance is Ederer's method (1961) brought forward
to a
Cox model.  The ideas are not hard, but it does take a whole chapter.

	Terry Therneau

More information about the R-help mailing list