HuHu {covadap}R Documentation

Covariate-Adaptive randomization by Hu and Hu

Description

Implements the Covariate-Adaptive randomization by Hu and Hu (2012) for assigning patients to two treatments A and B. The procedure works with qualitative covariates only.

Usage

HuHu(data, p = 0.85, omega = NULL, print.results = TRUE)

Arguments

data

a data frame or a matrix. Each row of data corresponds to the covariate profile of a patient.

p

biased coin probability for the Efron's allocation function (1/2 \leq p \leq 1). The default value is 0.85.

omega

vector of weights for the overall, within-stratum, and within-covariate-margin levels. If NULL (default) omega = rep(1/(n_cov + 2), n_cov + 2).

print.results

logical. If TRUE a summary of the results is printed.

Details

The function assigns patients to treatments A or B as described in Hu and Hu (2012).

The assignment probability to A of each patient is based on the Efron's allocation function (Efron, 1971) with biasing probability equal to p.

At the end of the study the imbalance measures reported are the loss of estimation precision as described in Atkinson (1982), the Mahalanobis distance and the overall imbalance, defined as the difference in the total number of patients assigned to treatment A and B. The strata imbalances measures report, for each stratum, the total number of patients assigned (N.strata), the number of patients assigned to A (A.strata) and the within stratum imbalance (D.strata), calculated as 2*A.strata-N.strata. The within covariate imbalances report, for each level of each qualitative covariate, the difference in the number of patients assigned to A and B. See also Value.

Value

It returns an object of class "covadap", which is a list containing the following elements:

summary.info

Design name of the design,

Sample_size number of patients,

n_cov number of covariates,

n_levels number of levels of each covariate,

var_names name of covariates and levels,

parameter_a design parameter (see above).

Assignments

a vector with the treatment assignments.

Imbalances.summary

summary of overall imbalance measures at the end of the study (Loss loss, Mahal Mahalanobis distance, overal.imb difference in the total number of patients assigned to A and B).

Strata.measures

a data frame containing for each possiblue stratum the corresponding imbalances: N.strata is the total number of patients assigned to the stratum; A.strata is the total number of patients assigned to A within the stratum; D.strata is the within-stratum imbalance, i.e. difference in the total number of patients assigned to A and B within the stratum.

Imbalances

a list containing all the imbalance measures:

Imb.measures (Loss loss, Mahal Mahalanobis distance),

Overall.imb difference in the total number of patients assigned to A and B,

Within.strata within-stratum imbalance for all strata,

Within.cov within-covariate imbalance: difference in the number of patients assigned to A and B for each level of each qualitative covariate.

data

the data provided in input.

observed.strata

a data frame with all the observed strata.

References

Hu Y, Hu F. Asymptotic properties of covariate-adaptive randomization. The Annals of Statistics, 2012, 40(3): 1794-1815.

Efron B, Forcing a sequential experiment to be balanced. Biometrika, 1971, 58(3): 403-418.

Atkinson A. C. Optimum biased coin designs for sequential clinical trials with prognostic factors. Biometrika, 1982, 69(1): 61-67.

See Also

HuHu.sim for allocating patients by simulating their covariate profiles.

Examples

require(covadap)


# Create a sample dataset
df1 <- data.frame("gender" = sample(c("female", "male"), 200, TRUE, c(1 / 3, 2 / 3)),
                  "age" = sample(c("18-35", "36-50", ">50"), 200, TRUE),
                  "bloodpressure" = sample(c("normal", "high", "hyper"), 200, TRUE),
                   stringsAsFactors = TRUE)
# To view a summary of the metrics of the design
HuHu(df1, p = 0.85, omega = NULL, print.results = TRUE)
# To view a summary
# and create a list containing all the metrics of the design
res <- HuHu(df1, p = 0.85, omega = NULL, print.results = TRUE)
res

[Package covadap version 1.0.1 Index]