The hardware and bandwidth for this mirror is donated by METANET, the Webhosting and Full Service-Cloud Provider.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]metanet.ch.

crt2power

Overview

crt2power is an R package that allows users to calculate the statistical power or sample size of their cluster randomized trials (CRTs) with two co-primary outcomes, given a set of input parameters. The motivation for this package is to aid in the design of hybrid 2 studies. Hybrid 2 studies are studies where there are two co-primary outcomes, namely an implementation outcome (such as fidelity or reach) and a health outcome (such as infection rates, or change from baseline health scores). When powering these studies, cluster correlations and the inflation of the Type I error rate must be accounted for.

The five key study design approaches are included in this package that can be used to power hybrid 2 CRTs. 1. P-Value Adjustments for Multiple Testing 2. Combined Outcomes Approach 3. Single 1-Degree of Freedom (DF) Combined Test for Two Outcomes 4. Disjunctive 2-DF Test for Two Outcomes 5. Conjunctive Intersection-Union Test for Two outcomes

For details on the methods listed above, please refer to the publication that discusses these methods, available here. (Add link)

Installation

install.packages("devtools")
require(devtools)
install_github("https://github.com/melodyaowen/crt2power")
require(crt2power)

Required Input Parameters

Table of Key Required Input Parameters: | Parameter | Statistical Notation | Variable Name | Description | | — | — | — | — | | Statistical power | \(\pi\) | power | Probability of detecting a true effect under \(H_A\) | | Number of clusters | \(K\) | K | Number of clusters in each treatment arm | | Cluster size | \(m\) | m | Number of individuals in each cluster | | Family-wise false positive rate | \(\alpha\) | alpha | Probability of one or more Type I error(s) | | Effect for \(Y_1\) | \(\beta_1^*\) | beta1 | Estimated intervention effect on the first outcome (\(Y_1\)) | | Effect for \(Y_2\) | \(\beta_2^*\) | beta2 | Estimated intervention effect on the second outcome (\(Y_2\)) | | Total variance of \(Y_1\) | \(\sigma_1^2\) | varY1 | Total variance of the first outcome, \(Y_1\) | | Total variance of \(Y_2\) | \(\sigma_2^2\) | varY2 | Total variance of the second outcome, \(Y_2\) | | Endpoint-specific ICC for \(Y_1\) | \(\rho_0^{(1)}\) | rho01 | Correlation for \(Y_1\) for two different individuals in the same cluster | | Endpoint-specific ICC for \(Y_2\) | \(\rho_0^{(2)}\) | rho02 | Correlation for \(Y_2\) for two different individuals in the same cluster | | Inter-subject between-endpoint ICC | \(\rho_1^{(1,2)}\) | rho1 | Correlation between \(Y_1\) and \(Y_2\) for two different individuals in the same cluster | | Intra-subject between-endpoint ICC | \(\rho_2^{(1,2)}\) | rho2 | Correlation between \(Y_1\) and \(Y_2\) for the same individual | | Treatment allocation ratio | \(r\) | r | Treatment allocation ratio; \(K_2 = rK_1\) where \(K_1\) is number of clusters in experimental group |

Function Description

Each method has a set of functions for calculating the statistical power (\(\pi\)), required number of clusters per treatment group (\(K\)), or cluster size (\(m\)) given a set of input parameters. The names of all functions offered in this package are listed below, organized by study design method.

1. P-Value Adjustments for Multiple Testing

2. Combined Outcomes Approach

3. Single 1-Degree of Freedom (DF) Combined Test for Two Outcomes

4. Disjunctive 2-DF Test for Two Outcomes

5. Conjunctive Intersection-Union Test for Two outcomes

Usage

# Example of using Method 1 for a power calculation
calc_pwr_pval_adj(K = 15, m = 300, alpha = 0.05,
                  beta1 = 0.1, beta2 = 0.1,
                  varY1 = 0.23, varY2 = 0.25,
                  rho01 = 0.025, rho02 = 0.025,
                  rho2  = 0.05, r = 1)

# Example of using Method 3 for number of clusters in treatment group (K) calculation
calc_K_single_1dftest(power = 0.8, m = 300, alpha = 0.05,
                      beta1 = 0.1, beta2 = 0.1,
                      varY1 = 0.23, varY2 = 0.25,
                      rho01 = 0.025, rho02 = 0.025,
                      rho1 = 0.01, rho2  = 0.05, r = 1)

# Example of using Method 5 for cluster size (m) calculation
calc_m_conj_test(power = 0.8, K = 15, alpha = 0.05,
                 beta1 = 0.1, beta2 = 0.1,
                 varY1 = 0.23, varY2 = 0.25,
                 rho01 = 0.025, rho02 = 0.025,
                 rho1 = 0.01, rho2  = 0.05, r = 1)

# Example of calculating power based on all five methods
run_crt2_design(output = "power", K = 15, m = 300, alpha = 0.05,
                beta1 = 0.1, beta2 = 0.1,
                varY1 = 0.23, varY2 = 0.25,
                rho01 = 0.025, rho02 = 0.025,
                rho1 = 0.01, rho2 = 0.05, r = 1)

Contact

For questions or comments, please email Melody Owen at melody.owen@yale.edu, or submit an issue to this repository.

These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.