[R] Weights and coxph

Thomas Lumley tlumley at u.washington.edu
Sun Jun 15 18:19:19 CEST 2008



It turns out that the issue is ties in survival times. Repeating the data produces tied failure times; weighting does not, so you get different results. The effect is unusually large here, perhaps because of the small sample size.

If you use the (less accurate) Breslow correction for ties, you do get the same answer for both data sets.


> coxph(Surv(time,status)~x+strata(sex),data=test,weights=wt,method="breslow")
Call:
coxph(formula = Surv(time, status) ~ x + strata(sex), data = test,
     weights = wt, method = "breslow")


   coef exp(coef) se(coef)    z    p
x 1.01      2.73    0.734 1.37 0.17

Likelihood ratio test=1.99  on 1 df, p=0.159  n=6 (1 observation deleted due to missingness)
> coxph(Surv(time,status)~x+strata(sex),data=test_freq,method="breslow")
Call:
coxph(formula = Surv(time, status) ~ x + strata(sex), data = test_freq,
     method = "breslow")


   coef exp(coef) se(coef)    z    p
x 1.01      2.73    0.734 1.37 0.17

Likelihood ratio test=1.99  on 1 df, p=0.159  n=18 (3 observations deleted due to missingness)



       -thomas


On Fri, 13 Jun 2008, mah wrote:

> I am confuse by the results of  the weights option for coxph.  I
> replicated each row three times from the help page for coxph in the
> data frame test_freq.  I had expected that the coefficients,
> significance tests, and tests of non-proportionality would yield the
> same results for the replicated and non-replicated data, but the
> output below shows differences in all three metrics.  Is this the
> result of a curved response variable?  This is likely more of a
> conceptual question than a language question, but all help is
> sincerely appreciated.
>
> Mike
>
>> test1
> $time
> [1] 4 3 1 1 2 2 3
>
> $status
> [1]  1 NA  1  0  1  1  0
>
> $x
> [1] 0 2 1 1 1 0 0
>
> $sex
> [1] 0 0 0 0 1 1 1
>
> $wt
> [1] 3 3 3 3 3 3 3
>
>> test_freq
>   time status x sex
> 1     4      1 0   0
> 2     4      1 0   0
> 3     4      1 0   0
> 4     3     NA 2   0
> 5     3     NA 2   0
> 6     3     NA 2   0
> 7     1      1 1   0
> 8     1      1 1   0
> 9     1      1 1   0
> 10    1      0 1   0
> 11    1      0 1   0
> 12    1      0 1   0
> 13    2      1 1   1
> 14    2      1 1   1
> 15    2      1 1   1
> 16    2      1 0   1
> 17    2      1 0   1
> 18    2      1 0   1
> 19    3      0 0   1
> 20    3      0 0   1
> 21    3      0 0   1
>> t1 <- coxph( Surv(time, status) ~ x + strata(sex), data=test1, weights=wt)
>> summary(t1)
> Call:
> coxph(formula = Surv(time, status) ~ x + strata(sex), data = test1,
>    weights = wt)
>
>  n=6 (1 observation deleted due to missingness)
>  coef exp(coef) se(coef)    z    p
> x 1.17      3.22    0.744 1.57 0.12
>
>  exp(coef) exp(-coef) lower .95 upper .95
> x      3.22      0.311     0.749      13.8
>
> Rsquare= 0.353   (max possible= 0.999 )
> Likelihood ratio test= 2.61  on 1 df,   p=0.106
> Wald test            = 2.47  on 1 df,   p=0.116
> Score (logrank) test = 2.67  on 1 df,   p=0.102
>
>> cox.zph(t1)
>      rho   chisq     p
> x -0.0716 0.00598 0.938
>> t_freq <- coxph( Surv(time, status) ~ x + strata(sex), data=test_freq)
>> summary(t_freq)
> Call:
> coxph(formula = Surv(time, status) ~ x + strata(sex), data =
> test_freq)
>
>  n=18 (3 observations deleted due to missingness)
>  coef exp(coef) se(coef)    z     p
> x 1.41      4.09    0.756 1.86 0.063
>
>  exp(coef) exp(-coef) lower .95 upper .95
> x      4.09      0.245     0.929      18.0
>
> Rsquare= 0.185   (max possible= 0.879 )
> Likelihood ratio test= 3.69  on 1 df,   p=0.0549
> Wald test            = 3.47  on 1 df,   p=0.0626
> Score (logrank) test = 3.84  on 1 df,   p=0.0499
>
>> cox.zph(t_freq)
>      rho  chisq     p
> x -0.0697 0.0526 0.819
>
> ______________________________________________
> R-help at r-project.org mailing list
> https://stat.ethz.ch/mailman/listinfo/r-help
> PLEASE do read the posting guide http://www.R-project.org/posting-guide.html
> and provide commented, minimal, self-contained, reproducible code.
>

Thomas Lumley			Assoc. Professor, Biostatistics
tlumley at u.washington.edu	University of Washington, Seattle



More information about the R-help mailing list