Description Usage Arguments Details Value Author(s) References See Also Examples
coxed()
returns expected durations for every observation in the data
used to fit the model, or in new data, or returns the mean or median of these
durations, or differences in duration for two predefined covariate profiles.
Standard errors and confidence intervals for all quantities produced by
coxed()
are calculated via bootstrapping.
1 2 3 
cox.model 
The output from a Cox proportional hazards model estimated
with the 
newdata 
An optional data frame in which to look for variables with which to predict. If omitted, the fitted values are used 
newdata2 
An optional data frame that can only be specified if

bootstrap 
Should bootstrapped standard errors and confidence intervals be calculated? 
method 
If "npsf" (the default), expected durations are calculated using the nonparametric step function approach described in Kropko and Harden (2018). If "gam", expected durations are calculated using the GAM method 
k 
The number of knots in the GAM smoother. The default is 1, which
employs the 
B 
Number of bootstrap simulation iterations 
confidence 
If "studentized" (the default), bootstrapped CIs are calculated from the tails of a normal distribution where the mean and standard deviation are the point estimate and boostrapped SE of each duration estimate. If "empirical", bootstrapped confidence intervals are calculated empirically. If "bca", bootstrapped confidence intervals are calculated using the biascorrection and acceleration method described by DiCiccio and Efron (1996). 
level 
The level of the confidence interval to calculate (default is .95 for a 95 percent confidence interval) 
id 
Cluster variable if bootstrapping is to be done by clusters of
observations rather than individual observations. If the data are coded
with timevarying covariates (using the 
... 
Additional arguments to be passed to the 
The coxed
function generates expected durations for individual
observations and/or marginal changes in expected duration given a change in a covariate
from the Cox proportional hazards model. Specifically, the methods can compute (1) the
expected duration for each observation used to fit the Cox model, given the covariates,
(2) the expected duration for a "new" observation with a covariate profile set by the
analyst, or (3) the first difference, or change, in expected duration given two new data frames.
There are two different methods, described in Kropko and Harden (2018), of generating durationbased quantities in the package.
The first method calculates expected durations by using a nonparametric estimate of the
baseline hazard and survivor functions (see coxed.npsf
for details).
The second method employs a generalized additive model
(GAM) to map the model's estimated linear predictor values to duration times (see coxed.gam
for details). Both
methods are also implemented for data structures with timevarying covariates
(see coxed.npsf.tvc
and coxed.gam.tvc
).
coxed
returns an object of class
"coxedExpdur" or
"coxedMargin", which is a list containing some of the following components, depending
on the implementation of coxed
:
exp.dur  A vector of predicted mean durations for the estimation sample
if newdata is omitted, or else for the specified new data. If bootstrap
is TRUE bootstrapped standard errors are also provided, as well as the confidence
interval requested by level . 
mean  The mean of the predicted durations. If bootstrap
is TRUE bootstrapped standard errors are also provided, as well as the confidence
interval requested by level . 
median  The median of the predicted durations. If bootstrap
is TRUE bootstrapped standard errors are also provided, as well as the confidence
interval requested by level . 
baseline.functions  The estimated cumulative baseline hazard function and survivor function. 
gam.model  Output from the gam function in which the durations
are fit against the exponentiated linear predictors from the Cox model. 
gam.data  Fitted values and confidence intervals from the GAM model. 
exp.dur1  A vector of predicted mean durations for the observations in newdata1
when calculating marginal effects. 
exp.dur2  A vector of predicted mean durations for the observations in newdata2
when calculating marginal effects. 
mean1  The mean of the predicted mean durations for the observations in newdata1
when calculating marginal effects. 
mean2  The mean of the predicted mean durations for the observations in newdata2
when calculating marginal effects. 
median1  The median of the predicted mean durations for the observations in newdata1
when calculating marginal effects. 
median2  The median of the predicted mean durations for the observations in newdata2
when calculating marginal effects. 
diff  A vector of the difference between the predicted mean durations for each
observation under the covariate profile in newdata2 and the covariate profile in newdata1 . 
mean.diff  The mean of the differences in duration across observations. 
median.diff  The median of the differences in duration across observations. 
Jonathan Kropko <jkropko@virginia.edu> and Jeffrey J. Harden <jharden2@nd.edu>
Kropko, J. and Harden, J. J. (2018). Beyond the Hazard Ratio: Generating Expected Durations from the Cox Proportional Hazards Model. British Journal of Political Science https://doi.org/10.1017/S000712341700045X
DiCiccio, T. J. and B. Efron. (1996). Bootstrap Confidence Intervals. Statistical Science. 11(3): 189–212. https://doi.org/10.1214/ss/1032280214
coxph
, cph
, bootcov2
,
coxed.gam
, coxed.gam.tvc
, coxed.npsf
,
coxed.npsf.tvc
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58  mv.surv < Surv(martinvanberg$formdur, event = rep(1, nrow(martinvanberg)))
mv.cox < coxph(mv.surv ~ postel + prevdef + cont + ident + rgovm + pgovno +
tpgovno + minority, method = "breslow", data = martinvanberg)
summary(mv.cox)
# NPSF method
ed1 < coxed(mv.cox, method="npsf")
ed1$baseline.functions
ed1$exp.dur
summary(ed1, stat="mean")
summary(ed1, stat="median")
## Not run: ed1 < coxed(mv.cox, method="npsf", bootstrap = TRUE)
ed1$exp.dur
summary(ed1, stat="mean")
summary(ed1, stat="median")
## End(Not run)
me < coxed(mv.cox, method="npsf", bootstrap = FALSE,
newdata = dplyr::mutate(martinvanberg, pgovno=1),
newdata2 = dplyr::mutate(martinvanberg, pgovno=6))
summary(me, stat="mean")
# GAM method
ed2 < coxed(mv.cox, method="gam")
summary(ed2$gam.data)
summary(ed2$gam.model)
ed2$exp.dur
summary(ed2, stat="mean")
## Not run: me < coxed(mv.cox, method="gam", bootstrap = TRUE,
newdata = dplyr::mutate(martinvanberg, pgovno=1),
newdata2 = dplyr::mutate(martinvanberg, pgovno=6))
summary(me, stat="mean")
summary(me, stat="median")
## End(Not run)
#Plotting the GAM fit
## Not run: ggplot(ed2$gam.data, aes(x=rank.xb, y=y)) +
geom_point() +
geom_line(aes(x=rank.xb, y=gam_fit)) +
geom_ribbon(aes(ymin=gam_fit_95lb, ymax=gam_fit_95ub), alpha=.5) +
xlab("Cox model LP rank (smallest to largest)") +
ylab("Duration")
## End(Not run)
#Timevarying covariates
bs.surv < Surv(time = boxsteffensmeier$start, time2 = boxsteffensmeier$te,
event = boxsteffensmeier$cut_hi)
bs.cox < coxph(bs.surv ~ ec + dem + south + iv, data = boxsteffensmeier, method = "breslow")
summary(bs.cox)
ed1 < coxed(bs.cox, method="npsf", id=boxsteffensmeier$caseid)
ed1$exp.dur
summary(ed1, stat="mean")

Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.