Learn R Programming

SurrogateOutcome (version 1.1)

R.t.estimate: Calculates the proportion of the treatment effect (the difference in restricted mean survival time at time t) explained by primary outcome information observed up to the landmark time

Description

Calculates the proportion of the treatment effect (the difference in restricted mean survival time at time t) explained by primary outcome information observed up to the landmark time; also provides standard error estimate and confidence interval.

Usage

R.t.estimate(xone, xzero, deltaone, deltazero, t, landmark, std = FALSE, conf.int
 = FALSE, weight.perturb = NULL)

Arguments

xone

numeric vector, observed event times for the primary outcome in the treatment group.

xzero

numeric vector, observed event times for the primary outcome in the control group.

deltaone

numeric vector, event/censoring indicators for the primary outcome in the treatment group.

deltazero

numeric vector, event/censoring indicators for the primary outcome in the control group.

t

time of interest for treatment effect.

landmark

landmark time of interest, \(t_0\).

std

TRUE or FALSE; indicates whether standard error estimates should be provided, default is FALSE. Estimates are calculated using perturbation-resampling. Two versions are provided: one that takes the standard deviation of the perturbed estimates (denoted as "sd") and one that takes the median absolute deviation (denoted as "mad").

conf.int

TRUE or FALSE; indicates whether 95% confidence intervals should be provided. Confidence intervals are calculated using the percentiles of perturbed estimates, default is FALSE. If this is TRUE, standard error estimates are automatically provided.

weight.perturb

weights used for perturbation resampling.

Value

A list is returned:

delta

the estimate, \(\hat{\Delta}(t)\), described in delta.estimate documentation.

delta.t

the estimate, \(\hat{\Delta}_T(t,t_0)\), described above.

R.t

the estimate, \(\hat{R}_T(t,t_0)\), described above.

delta.sd

the standard error estimate of \(\hat{\Delta}(t)\); if std = TRUE or conf.int = TRUE.

delta.mad

the standard error estimate of \(\hat{\Delta}(t)\) using the median absolute deviation; if std = TRUE or conf.int = TRUE.

delta.t.sd

the standard error estimate of \(\hat{\Delta}_T(t,t_0)\); if std = TRUE or conf.int = TRUE.

delta.t.mad

the standard error estimate of \(\hat{\Delta}_T(t,t_0)\) using the median absolute deviation; if std = TRUE or conf.int = TRUE.

R.t.sd

the standard error estimate of \(\hat{R}_T(t,t_0)\); if std = TRUE or conf.int = TRUE.

R.t.mad

the standard error estimate of \(\hat{R}_T(t,t_0)\) using the median absolute deviation; if std = TRUE or conf.int = TRUE.

conf.int.delta

a vector of size 2; the 95% confidence interval for \(\hat{\Delta}(t)\) based on sample quantiles of the perturbed values; if conf.int = TRUE.

conf.int.delta.t

a vector of size 2; the 95% confidence interval for \(\hat{\Delta}_T(t,t_0)\) based on sample quantiles of the perturbed values; if conf.int = TRUE.

conf.int.R.t

a vector of size 2; the 95% confidence interval for \(\hat{R}_T(t,t_0)\) based on sample quantiles of the perturbed values; if conf.int = TRUE.

Details

Let \(G \in \{1,0\}\) be the randomized treatment indicator, \(T\) denote the time of the primary outcome of interest, and \(S\) denote the time of the surrogate outcome. We use potential outcomes notation such that \(T^{(G)}\) and \(S^{(G)}\) denote the respective times of the primary and surrogate outcomes under treatment G, for \(G \in \{1, 0\}\). In the absence of censoring, we only observe \((T, S)=(T^{(1)}, S^{(1)})\) or \((T^{(0)}, S^{(0)})\) for each individual depending on whether \(G=1\) or \(0\). Due to censoring, data consist of \(n = n_1 + n_0\) independent observations \(\{X_{gi}, \delta_{gi}, I(S_{gi}< t_0)I(X_{gi} > t_0), S_{gi}\wedge t_0 I(X_{gi} > t_0), i=1,...,n_g, g = 1,0\}\), where \(X_{gi} = T_{gi}\wedge C_{ gi}\), \(\delta_{gi} = I(T_{gi} < C_{gi})\), \(C_{gi}\) denotes the censoring time, \(T_{gi}\) denotes the time of the primary outcome, \(S_{gi}\) denotes the time of the surrogate outcome, \(\{(T_{gi}, C_{gi}, S_{gi}), i = 1, ..., n_g\}\) are identically distributed within treatment group, and \(t_0\) is the landmark time of interest.

The proportion of treatment effect explained by primary outcome information observed up to the landmark time, \(t_0\), is defined as \(R_T(t, t_0) = 1-\Delta_T(t,t_0) / \Delta(t)\) where $$\Delta_T(t,t_0) = P(T^{(0)} > t_0) E\{T^{(1)} \wedge t - T^{(0)} \wedge t \mid T > t_0 \}$$ and \(\Delta(t)\) is the treatment effect on the primary outcome, defined in the documentation for delta.estimate. The quantity \(\Delta_T(t,t_0)\) is estimated using $$\hat{\Delta}_T(t,t_0) = n_0^{-1} \sum_{i=1}^{n_0} I(X_{0i} > t_0) /\hat{W}_0^C(t_0) \{\hat{\nu}_{1}(t|t_0) - \hat{\nu}_{0}(t|t_0) \}$$ where \(\hat{W}^C_0(t)\) is the Kaplan-Meier estimator of \(P(C_{gi} \ge t)\), \(\hat{\nu}_{0}(t|t_0)\) is defined in the documentation for R.q.event and \(\hat{\nu}_{1}(t|t_0)\) is obtained by replacing \(0\) with \(1\).

References

Parast L, Tian L, and Cai T (2020). Assessing the Value of a Censored Surrogate Outcome. Lifetime Data Analysis, 26(2):245-265.

Examples

Run this code
# NOT RUN {
data(ExampleData)
names(ExampleData)

# }
# NOT RUN {
R.t.estimate(xone = ExampleData$x1, xzero = ExampleData$x0, deltaone =ExampleData$delta1, 
deltazero = ExampleData$delta0, t = 5, landmark=2)

R.t.estimate(xone = ExampleData$x1, xzero = ExampleData$x0, deltaone = ExampleData$delta1, 
deltazero = ExampleData$delta0, t = 5, landmark=2, std = TRUE, conf.int = TRUE)
# }
# NOT RUN {
# }

Run the code above in your browser using DataLab