The coxph function is failing because there is no good solution to your
problem.
As set up, at any death time the observation that dies is that one with the
smallest x value. You can replicate your results with a simpler example:
zed <- 1:50
coxph(Surv(zed) ~ zed)
The actual solution is beta = -infinity and loglik =0. The Newton-Raphson
iteration path settles down to a pattern of
next beta = last beta * c
new loglik= old loglik /c
where for your data c is about 1.5.
Computationally, however, a race condition occurs: will the loglik reach
it's convergence criteria or will exp(beta) become effectively zero? When
the latter happens the compuations collapse with any one of a number of error
messages, depending on what line of code first tries a division by zero.
For your data this happens at iter=11 and beta= -853.
Terry Therneau
Mayo Clinic
|