[R] Overall p-value from a factor in a coxph fit

Paul Johnson pauljohn32 at gmail.com
Fri Apr 18 17:26:18 CEST 2008

On Fri, Apr 18, 2008 at 3:06 AM, Kåre Edvardsen <ked at nilu.no> wrote:
> Hi all.
>  If I run the simple regression when x is a categorical variable ( x <-
>  factor(x) ):
>  > MyFit <-coxph( Surv(start, stop, event) ~ x )
>  How can I get the overall p-value on x other than for each dummy
>  variable?
>  > anova(MyFit)
>  does NOT provide that information as previously suggested on the list.

It "should" work...  Here's a self contained example showing that
anova does give the desired significance test for an lm model.

> y <- rnorm(100)
> x <- gl(5,20)
> mod <- lm(y~x)
> anova(mod)
Analysis of Variance Table

Response: y
          Df  Sum Sq Mean Sq F value Pr(>F)
x          4   6.575   1.644  1.5125 0.2047
Residuals 95 103.237   1.087

If you provide a similar self contained example leading up to a coxph,
I would be glad to investigate your question.  You don't give enough
information for me to tell which version of coxph you are running, and
from what  package.

Suppose I "guess" that you are using the coxph from the package
"survival". If so, it appears to me there is a bug in that package at
the moment.  The methods anova.coxph and drop1.coxph did exist at one
time, until very recently.  There is a thread in r-help (which I found
by typing "RSiteSearch("anova.coxph")" ) discussing recent troubles
with anova.coxph.


As you see from the discussion in that thread, there used to be an
anova method for coxph, and in the version of survival I have now,
there is no such method.  The version I have is  2.34-1, Date:

Here's what I see after I run "example(coxph)" in order to create some
coxph objects, on which I can test the diagnostics:

> drop1(test2)
Error in terms.default(terms1) : no terms component
> anova(test2)
Error in UseMethod("anova") : no applicable method for "anova"

In that survival package, I do find anova.survreg, but not
anova.coxph. If you are using the survival package, I'd suggest you
contact Thomas Lumley directly, since he maintains it.

I think if you had reported the exact error you saw, it would have
been easier for me to diagnose the trouble.


Paul E. Johnson
Professor, Political Science
1541 Lilac Lane, Room 504
University of Kansas

More information about the R-help mailing list