The function FixedContBinIT
uses the information-theoretic approach (Alonso & Molenberghs, 2007) to estimate trial- and individual-level surrogacy based on fixed-effect models when T is continuous normally distributed and S is binary. The user can specify whether a (weighted or unweighted) full, semi-reduced, or reduced model should be fitted. See the Details section below.
FixedContBinIT(Dataset, Surr, True, Treat, Trial.ID, Pat.ID,
Model=c("Full"), Weighted=TRUE, Min.Trial.Size=2, Alpha=.05,
Number.Bootstraps=50,Seed=sample(1:1000, size=1))
An object of class FixedContBinIT
with components,
Prior to conducting the surrogacy analysis, data of patients who have a missing value for the surrogate and/or the true endpoint are excluded. In addition, the data of trials (i) in which only one type of the treatment was administered, and (ii) in which either the surrogate or the true endpoint was a constant (i.e., all patients within a trial had the same surrogate and/or true endpoint value) are excluded. In addition, the user can specify the minimum number of patients that a trial should contain in order to include the trial in the analysis. If the number of patients in a trial is smaller than the value specified by Min.Trial.Size
, the data of the trial are excluded. Data.Analyze
is the dataset on which the surrogacy analysis was conducted.
A data.frame
that contains the total number of patients per trial and the number of patients who were administered the control treatment and the experimental treatment in each of the trials (in Data.Analyze
).
A data.frame
that contains the trial-specific intercepts and treatment effects for the surrogate and the true endpoints (when a full or semi-reduced model is requested), or the trial-specific treatment effects for the surrogate and the true endpoints (when a reduced model is requested).
A data.frame
that contains the trial-level surrogacy estimate and its confidence interval.
A data.frame
that contains the individual-level surrogacy estimate
A data.frame
that contains the individual-level surrogacy estimate
A data.frame
that contains individual-level surrogacy estimates
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, a patient ID, and a trial ID.
The name of the variable in Dataset
that contains the surrogate endpoint values.
The name of the variable in Dataset
that contains the true endpoint values.
The name of the variable in Dataset
that contains the treatment indicators. The treatment indicator should either be coded as
The name of the variable in Dataset
that contains the trial ID to which the patient belongs.
The name of the variable in Dataset
that contains the patient's ID.
The type of model that should be fitted, i.e., Model=c("Full")
, Model=c("Reduced")
, or Model=c("SemiReduced")
. See the Details section below. Default Model=c("Full")
.
Logical. In practice it is often the case that different trials (or other clustering units) have different sample sizes. Univariate models are used to assess surrogacy in the information-theoretic approach, so it can be useful to adjust for heterogeneity in information content between the trial-specific contributions (particularly when trial-level surrogacy measures are of primary interest and when the heterogeneity in sample sizes is large). If Weighted=TRUE
, weighted regression models are fitted. If Weighted=FALSE
, unweighted regression analyses are conducted. See the Details section below. Default TRUE
.
The minimum number of patients that a trial should contain to be included in the analysis. If the number of patients in a trial is smaller than the value specified by Min.Trial.Size
, the data of the trial are excluded from the analysis. Default
The
The standard error and confidence interval for Number.Bootstraps
specifies the number of bootstrap samples that are used. Default
The seed to be used in the bootstrap procedure. Default
Wim Van der Elst, Ariel Alonso, & Geert Molenberghs
Individual-level surrogacy
The following univariate generalised linear models are fitted:
where
The
where
When it can be assumed (i) that the treatment-corrected association between the surrogate and the true endpoint is constant across trials, or (ii) when all data come from a single clinical trial (i.e., when
Trial-level surrogacy
When a full or semi-reduced model is requested (by using the argument Model=c("Full")
or Model=c("SemiReduced")
in the function call), trial-level surrogacy is assessed by fitting the following univariate models:
where
When a reduced model is requested by the user (by using the argument Model=c("Reduced")
in the function call), the following univariate models are fitted:
where
When the user requested a full model approach (by using the argument Model=c("Full")
in the function call, i.e., when models (1) were fitted), the following model is subsequently fitted:
where the parameter estimates for Weighted=TRUE
in the function call), model (3) is a weighted regression model (with weights based on the number of observations in trial
where
When a semi-reduced or reduced model is requested (by using the argument Model=c("SemiReduced")
or Model=c("Reduced")
in the function call), the following model is fitted:
where the parameter estimates for
Alonso, A, & Molenberghs, G. (2007). Surrogate marker evaluation from an information theory perspective. Biometrics, 63, 180-186.
FixedBinBinIT
, FixedBinContIT, plot Information-Theoretic BinCombn
if (FALSE) # Time consuming (>5sec) code part
# Generate data with continuous Surr and True
Sim.Data.MTS(N.Total=2000, N.Trial=100, R.Trial.Target=.8,
R.Indiv.Target=.8, Seed=123, Model="Full")
# Make S binary
Data.Observed.MTS$Surr_Bin <- Data.Observed.MTS$Surr
Data.Observed.MTS$Surr_Bin[Data.Observed.MTS$Surr>=0] <- 1
Data.Observed.MTS$Surr_Bin[Data.Observed.MTS$Surr<0] <- 0
# Analyze data
Fit <- FixedContBinIT(Dataset = Data.Observed.MTS, Surr = Surr_Bin,
True = True, Treat = Treat, Trial.ID = Trial.ID, Pat.ID = Pat.ID,
Model = "Full", Number.Bootstraps=50)
# Examine results
summary(Fit)
plot(Fit, Trial.Level = FALSE, Indiv.Level.By.Trial=TRUE)
plot(Fit, Trial.Level = TRUE, Indiv.Level.By.Trial=FALSE)
Run the code above in your browser using DataLab