As far as I know, coxph
handles ties by default, and there are 3 options for handling ties. I wonder how svycoxph
in the survey package handles ties. Is it the same as coxph
? There does not seem to be an option for this.
Nothing about ties is mentioned in CRAN and I couldn't find anything about it. Does anyone know about this?
CodePudding user response:
For svycoxph
, according to the documentation, it is possible to pass the arguments of coxph
in 3 dots ...
... - For AIC, more models to compare the AIC of. For svycoxph, other arguments passed to coxph.
If we look at the arguments for coxph
args(coxph)
function (formula, data, weights, subset, na.action, init, control,
ties = c("efron", "breslow", "exact"), singular.ok = TRUE,
robust, model = FALSE, x = FALSE, y = TRUE, tt, method = ties,
id, cluster, istate, statedata, nocenter = c(-1, 0, 1), ...)
where the ties
(by default "efron") is also assigned in the method
Also, by looking at the source code of one of the methods of svycoxph
getAnywhere("svycoxph.svyrep.design")
function (formula, design, subset = NULL, rescale = NULL, ...,
return.replicates = FALSE, na.action, multicore = getOption("survey.multicore"))
{
...
...
if (full$method %in% c("efron", "breslow")) { ### here
if (attr(full$y, "type") == "right")
fitter <- coxph.fit
else if (attr(full$y, "type") == "counting")
fitter <- survival::agreg.fit
else stop("invalid survival type")
}
else fitter <- survival::agexact.fit
...
Using a small reproducible example from the documentation of svycoxph
> svycoxph(Surv(time,status>0)~log(bili) protime albumin,design=rpbc, ties = "efron")
Call:
svycoxph.svyrep.design(formula = Surv(time, status > 0) ~ log(bili)
protime albumin, design = rpbc, ties = "efron")
coef exp(coef) se(coef) z p
log(bili) 0.88592 2.42522 0.09838 9.005 < 2e-16
protime 0.24487 1.27745 0.09373 2.612 0.00899
albumin -1.04298 0.35240 0.21966 -4.748 2.05e-06
Likelihood ratio test=NA on 3 df, p=NA
n= 312, number of events= 144
> svycoxph(Surv(time,status>0)~log(bili) protime albumin,design=rpbc, ties = "breslow")
Call:
svycoxph.svyrep.design(formula = Surv(time, status > 0) ~ log(bili)
protime albumin, design = rpbc, ties = "breslow")
coef exp(coef) se(coef) z p
log(bili) 0.88527 2.42363 0.09834 9.002 < 2e-16
protime 0.24494 1.27754 0.09373 2.613 0.00897
albumin -1.04112 0.35306 0.21992 -4.734 2.2e-06
Likelihood ratio test=NA on 3 df, p=NA
n= 312, number of events= 144