| stdCoxph {stdReg} | R Documentation |
Regression standardization in Cox proportional hazards models
Description
stdCoxph performs regression standardization in Cox proportional hazards models,
at specified values of the exposure, over the sample covariate distribution.
Let T, X, and Z be the survival outcome, the exposure, and a
vector of covariates, respectively. stdCoxph uses a fitted Cox
proportional hazards model to estimate the standardized
survival function \theta(t,x)=E\{S(t|X=x,Z)\}, where t is a specific value of T,
x is a specific value of X, and the expectation is over the marginal
distribution of Z.
Usage
stdCoxph(fit, data, X, x, t, clusterid, subsetnew)
Arguments
fit |
an object of class |
data |
a data frame containing the variables in the model. This should be the same
data frame as was used to fit the model in |
X |
a string containing the name of the exposure variable |
x |
an optional vector containing the specific values of |
t |
an optional vector containing the specific values of |
clusterid |
an optional string containing the name of a cluster identification variable when data are clustered. |
subsetnew |
an optional logical statement specifying a subset of observations to be used in the standardization. This set is assumed to be a subset of the subset (if any) that was used to fit the regression model. |
Details
stdCoxph assumes that a Cox proportional hazards model
\lambda(t|X,Z)=\lambda_0(t)exp\{h(X,Z;\beta)\}
has been fitted. Breslow's
estimator of the cumulative baseline hazard \Lambda_0(t)=\int_0^t\lambda_0(u)du
is used together with the partial likelihood estimate of \beta to obtain
estimates of the survival function S(t|X=x,Z):
\hat{S}(t|X=x,Z)=exp[-\hat{\Lambda}_0(t)exp\{h(X=x,Z;\hat{\beta})\}].
For each t in the t argument and for each x in the x argument,
these estimates are averaged across all subjects (i.e. all observed values of Z)
to produce estimates
\hat{\theta}(t,x)=\sum_{i=1}^n \hat{S}(t|X=x,Z_i)/n,
where Z_i is the value of Z for subject i, i=1,...,n.
The variance for \hat{\theta}(t,x) is obtained by the sandwich formula.
Value
An object of class "stdCoxph" is a list containing
call |
the matched call. |
input |
|
est |
a matrix with |
vcov |
a list with |
Note
Standardized survival functions are sometimes referred to as (direct) adjusted survival functions in the literature.
stdCoxph does not currently handle time-varying exposures or covariates.
stdCoxph internally loops over all values in the t argument. Therefore,
the function will usually be considerably faster if length(t) is small.
The variance calculation performed by stdCoxph does not condition on
the observed covariates \bar{Z}=(Z_1,...,Z_n). To see how this matters,
note that
var\{\hat{\theta}(t,x)\}=E[var\{\hat{\theta}(t,x)|\bar{Z}\}]+var[E\{\hat{\theta}(t,x)|\bar{Z}\}].
The usual parameter \beta in a Cox proportional hazards model does not
depend on \bar{Z}. Thus, E(\hat{\beta}|\bar{Z}) is independent of
\bar{Z} as well (since E(\hat{\beta}|\bar{Z})=\beta), so that the
term var[E\{\hat{\beta}|\bar{Z}\}] in the corresponding variance
decomposition for var(\hat{\beta}) becomes equal to 0. However,
\theta(t,x) depends on \bar{Z} through the average over the sample
distribution for Z, and thus the term var[E\{\hat{\theta}(t,x)|\bar{Z}\}]
is not 0, unless one conditions on \bar{Z}. The variance calculation by
Gail and Byar (1986) ignores this term, and thus effectively conditions on
\bar{Z}.
Author(s)
Arvid Sjolander
References
Chang I.M., Gelman G., Pagano M. (1982). Corrected group prognostic curves and summary statistics. Journal of Chronic Diseases 35, 669-674.
Gail M.H. and Byar D.P. (1986). Variance calculations for direct adjusted survival curves, with applications to testing for no treatment effect. Biometrical Journal 28(5), 587-599.
Makuch R.W. (1982). Adjusted survival curve estimation using covariates. Journal of Chronic Diseases 35, 437-443.
Sjolander A. (2016). Regression standardization with the R-package stdReg. European Journal of Epidemiology 31(6), 563-574.
Sjolander A. (2016). Estimation of causal effect measures with the R-package stdReg. European Journal of Epidemiology 33(9), 847-858.
Examples
require(survival)
n <- 1000
Z <- rnorm(n)
X <- rnorm(n, mean=Z)
T <- rexp(n, rate=exp(X+Z+X*Z)) #survival time
C <- rexp(n, rate=exp(X+Z+X*Z)) #censoring time
U <- pmin(T, C) #time at risk
D <- as.numeric(T < C) #event indicator
dd <- data.frame(Z, X, U, D)
fit <- coxph(formula=Surv(U, D)~X+Z+X*Z, data=dd, method="breslow")
fit.std <- stdCoxph(fit=fit, data=dd, X="X", x=seq(-1,1,0.5), t=1:5)
print(summary(fit.std, t=3))
plot(fit.std)