Surrogate (version 1.7)

Single.Trial.RE.AA: Conducts a surrogacy analysis based on the single-trial meta-analytic framework

Description

The function Single.Trial.RE.AA conducts a surrogacy analysis based on the single-trial meta-analytic framework of Buyse & Molenberghs (1998). See Details below.

Usage

Single.Trial.RE.AA(Dataset, Surr, True, Treat, Pat.ID, Alpha=.05, 
Number.Bootstraps=500, Seed=sample(1:1000, size=1))

Arguments

Dataset

A data.frame that should consist of one line per patient. Each line contains (at least) a surrogate value, a true endpoint value, a treatment indicator, and a patient ID.

Surr

The name of the variable in Dataset that contains the surrogate values.

True

The name of the variable in Dataset that contains the true endpoint values.

Treat

The name of the variable in Dataset that contains the treatment indicators. The treatment indicator should either be coded as \(1\) for the experimental group and \(-1\) for the control group, or as \(1\) for the experimental group and \(0\) for the control group. The \(-1/1\) coding is recommended.

Pat.ID

The name of the variable in Dataset that contains the patient's ID.

Alpha

The \(\alpha\)-level that is used to determine the confidence intervals around Alpha (which is a parameter estimate of a model where the surrogate is regressed on the treatment indicator, see Details below), Beta, RE, and \(\gamma\). Default \(0.05\).

Number.Bootstraps

The number of bootstrap samples that are used to obtain the bootstrapp-based confidence intervals for RE and the adjusted association (\(\gamma\)). Default \(500\).

Seed

The seed that is used to generate the bootstrap samples. Default sample(x=1:1000, size=1), i.e., a random number between 1 and 1000.

Value

An object of class Single.Trial.RE.AA with components,

Data.Analyze

Prior to conducting the surrogacy analysis, data of patients who have a missing value for the surrogate and/or the true endpoint are excluded. Data.Analyze is the dataset on which the surrogacy analysis was conducted.

Alpha

An object of class data.frame that contains the parameter estimate for \(\alpha\), its standard error, and its confidence interval. Note that Alpha is not to be confused with the Alpha argument in the function call, which specifies the \(\alpha\)-level of the confidence intervals of the parameters.

Beta

An object of class data.frame that contains the parameter estimate for \(\beta\), its standard error, and its confidence interval.

RE.Delta

An object of class data.frame that contains the estimated RE, its standard error, and its confidence interval (based on the Delta method).

RE.Fieller

An object of class data.frame that contains the estimated RE, its standard error, and its confidence interval (based on Fieller's theorem).

RE.Boot

An object of class data.frame that contains the estimated RE, its standard error, and its confidence interval (based on bootstrapping). Note that the occurence of outliers in the sample of bootstrapped RE values may lead to standard errors and/or confidence intervals that are not trustworthy. Such problems mainly occur when the parameter estimate for \(\alpha\) is close to 0 (taking its standard error into account). To detect possible outliers, studentized deleted residuals are computed (by fitting an intercept-only model with the bootstrapped RE values as the outcome variable). Bootstrapped RE values with an absolute studentized residual larger than \(t(1-\alpha/2n;n-2)\) are marked as outliers (where n = the number of bootstrapped RE values; Kutner et al., 2005). A warning is given when outliers are found, and the position of the outlier(s) in the bootstrap sample is identified. Inspection of the vector of bootstrapped RE values (see RE.Boot.Samples below) is recommended in this situation, and/or the use of the confidence intervals that are based on the Delta method or Fieller's theorem (rather than the bootstrap-based confidence interval).

AA

An object of class data.frame that contains the adjusted association (i.e., \(\gamma\)), its standard error, and its confidence interval (based on the Fisher-Z transformation procedure).

AA.Boot

An object of class data.frame that contains the adjusted association (i.e., \(\gamma\)), its standard error, and its confidence interval (based on a bootstrap procedure).

RE.Boot.Samples

A vector that contains the RE values that were generated during the bootstrap procedure.

AA.Boot.Samples

A vector that contains the adjusted association (i.e., \(\gamma\)) values that were generated during the bootstrap procedure.

Cor.Endpoints

A data.frame that contains the correlations between the surrogate and the true endpoint in the control treatment group (i.e., \(\rho_{T0T1}\)) and in the experimental treatment group (i.e., \(\rho_{T1S1}\)), their standard errors and their confidence intervals.

Residuals

A data.frame that contains the residuals for the surrogate and true endpoints that are obtained when the surrogate and the true endpoint are regressed on the treatment indicator.

Details

The Relative Effect (RE) and the adjusted association (\(\gamma\)) are based on the following bivariate regression model (when the surrogate and the true endpoints are continuous variables): $$S_{j}=\mu_{S}+\alpha Z_{j}+\varepsilon_{Sj},$$ $$T_{j}=\mu_{T}+\beta Z_{j}+\varepsilon_{Tj},$$

where the error terms have a joint zero-mean normal distribution with variance-covariance matrix:

$$\boldsymbol{\Sigma}=\left(\begin{array}{cc} \sigma_{SS}\\ \sigma_{ST} & \sigma_{TT} \end{array}\right),$$

and where \(j\) is the subject indicator, \(S_{j}\) and \(T_{j}\) are the surrogate and true endpoint values of patient \(j\), and \(Z_{j}\) is the treatment indicator for patient \(j\).

The parameter estimates of the fitted regression model and the variance-covariance matrix of the residuals are used to compute RE and the adjusted association (\(\gamma\)), respectively:

$$RE=\frac{\beta}{\alpha},$$ $$\gamma=\frac{\sigma_{ST}}{\sqrt{\sigma_{SS}\sigma_{TT}}}.$$

Note

The single-trial meta-analytic framework is hampered by a number of issues (Burzykowski et al., 2005). For example, a key motivation to validate a surrogate endpoint is to be able to predict the effect of Z on T as based on the effect of Z on S in a new clinical trial where T is not (yet) observed. The RE allows for such a prediction, but this requires the assumption that the relation between \(\alpha\) and \(\beta\) can be described by a linear regression model that goes through the origin. In other words, it has to be assumed that the RE remains constant across clinical trials. The constant RE assumption is unverifiable in a single-trial setting, but a way out of this problem is to combine the information of multiple clinical trials and generalize the RE concept to a multiple-trial setting (as is done in the multiple-trial meta-analytic approach, see UnifixedContCont, BifixedContCont, UnimixedContCont, and BimixedContCont).

References

Burzykowski, T., Molenberghs, G., & Buyse, M. (2005). The evaluation of surrogate endpoints. New York: Springer-Verlag.

Buyse, M., & Molenberghs, G. (1998). The validation of surrogate endpoints in randomized experiments. Biometrics, 54, 1014-1029.

Buyse, M., Molenberghs, G., Burzykowski, T., Renard, D., & Geys, H. (2000). The validation of surrogate endpoints in meta-analysis of randomized experiments. Biostatistics, 1, 49-67.

Kutner, M. H., Nachtsheim, C. J., Neter, J., & Li, W. (2005). Applied linear statistical models (5th ed.). New York: McGraw Hill.

See Also

UnifixedContCont, BifixedContCont, UnimixedContCont, BimixedContCont, ICA.ContCont

Examples

Run this code
# NOT RUN {
 # time consuming code part
# Example 1, based on the ARMD data:
data(ARMD)

# Assess surrogacy based on the single-trial meta-analytic approach:
Sur <- Single.Trial.RE.AA(Dataset=ARMD, Surr=Diff24, True=Diff52, Treat=Treat, Pat.ID=Id)

# Obtain a summary and plot of the results
summary(Sur)
plot(Sur)


# Example 2
# Conduct an analysis based on a simulated dataset with 2000 patients 
# and Rindiv=.8
# Simulate the data:
Sim.Data.STS(N.Total=2000, R.Indiv.Target=.8, Seed=123)

# Assess surrogacy:
Sur2 <- Single.Trial.RE.AA(Dataset=Data.Observed.STS, Surr=Surr, True=True, Treat=Treat, 
Pat.ID=Pat.ID)

# Show a summary and plots of results
summary(Sur2)
plot(Sur2)
# }

Run the code above in your browser using DataLab