-
Notifications
You must be signed in to change notification settings - Fork 0
/
README.Rmd
162 lines (83 loc) · 9.27 KB
/
README.Rmd
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
---
output: github_document
bibliography:
- "covariate_adjustment.bib"
---
<!-- README.md is generated from README.Rmd. Please edit that file -->
```{r Setup, include = FALSE}
# Graphical Parameters
fig_w <- 8
fig_h <- 8
knitr::opts_chunk$set(
collapse = TRUE,
comment = "#>",
fig.path = "man/figures/README-",
fig.width = fig_w,
fig.height = fig_h,
fig.align = "center",
out.width = "100%",
dpi = 600,
echo = FALSE,
message = FALSE
)
```
```{r Example Params, echo = FALSE}
example_re <- 1.25
example_rcv <- (1/example_re) - 1
example_pcv <- 100*example_rcv
example_rcp <- example_re - 1
example_pcp <- 100*example_rcp
```
# `impart`: A package for designing, monitoring, and analyzing randomized trials
<!-- badges: start -->
[![Project Status: Active – The project has reached a stable, usable state and is being actively developed.](https://www.repostatus.org/badges/latest/active.svg)](https://www.repostatus.org/#active)
[![R-CMD-check](https://github.com/jbetz-jhu/impart/actions/workflows/R-CMD-check.yaml/badge.svg)](https://github.com/jbetz-jhu/impart/actions/workflows/R-CMD-check.yaml)
[![codecov](https://codecov.io/gh/jbetz-jhu/impart/graph/badge.svg?token=75LYU8AN1H)](https://codecov.io/gh/jbetz-jhu/impart)
<!-- badges: end -->
Investigators are faced with many challenges in designing efficient, ethical randomized trials due to competing demands: a trial must collect enough information to identify meaningful benefits or harms with a desired probability while also minimizing potential harm and suboptimal treatment of participants. Satisfying these competing demands is further complicated by the limited and imprecise information available during the design of a study.
Studies designed around a fixed sample size are inflexible, requiring investigators to wait until the end of data collection to perform statistical analyses. Group sequential designs are more flexible, allowing studies to be stopped for efficacy or futility according to a pre-planned analyses, which occur when the number of obtained primary outcomes reach pre-specified fractions of the final sample size.
Covariate adjustment allows investigators to potentially gain additional precision by utilizing information collected from individuals prior to randomization in the statistical analysis. This potential increase in precision can be used to provide additional power in a fixed sample size design or a group sequential design. Not all methods of covariate adjustment are directly compatible with group sequential designs, but a broad class of methods can be made compatible by performing an orthogonalization of the resulting estimates and their variance-covariance matrix [@VanLancker2022].
A disadvantage of covariate adjustment is that the amount of precision gained from covariate adjustment is not known precisely at the outset of a study. This complicates the ability to use covariate adjustment to reduce the required sample size instead of providing additional power. Rather than planning analyses based on a specific number of participants, investigators can pre-specify when analyses reach pre-specified levels of precision: this is known as information monitoring [@Mehta2001]. This allows investigators to adapt their study to the precision in the accruing data, reducing the risk of under- or overpowered trials. This also allows investigators to use covariate adjustment to shorten the trial duration, rather than just providing additional power and precision.
The `impart` package can be used for performing covariate adjustment in group sequential designs or designing, monitoring, and analyzing information monitored designs.
## Installation
You can install the development version of impart from [GitHub](https://github.com/) using:
```{r Install Impart, echo = TRUE}
# install.packages("devtools")
devtools::install_github("jbetz-jhu/impart")
```
There are several vignettes built into `impart`: These are listed in the 'Articles' tab above, and can be listed in the R console:
```{r List-Vignettes, eval = FALSE}
print(vignette(package = "impart"))
```
--------------------------------------------------------------------------------
## Background for Information Monitoring
We can estimate the precision required to achieve power $(1 - \beta)$ to identify a treatment effect $\delta$ with a $s$-sided test with type I error rate $\alpha$ using:
$$\mathcal{I} = \left(\frac{Z_{\alpha/s} + Z_{\beta}}{\delta}\right)^2 \approx \frac{1}{\left(SE(\hat{\delta})\right)^2} = \frac{1}{Var(\hat{\delta})}$$
This uses the square of the empirical standard error (or the empirical variance estimate) to measure the precision to which the treatment effect $\delta$ can be measured with the data in hand. A precision-adaptive design can reduce the risk of under- or overpowered trials by collecting data until the precision is sufficient to conduct analyses.
--------------------------------------------------------------------------------
### Approximate Precision vs. Sample Size
Let $T$ denote treatment and $C$ denote control, and $Y^{(A)}$ denote the outcome of interest under treatment assigment $A$, where $A = 1$ indicates assignment to the treatment arm and $A = 0$ denotes assignment to the control arm.
For a continuous outcome, the required information to estimate the difference in means $\delta_{DIM} = E[Y^{(1)}] - E[Y^{(0)}]$ depends on the sample size and variances of outcomes in each treatment arm:
$$SE(\delta) = \sqrt{\frac{\sigma^{2}_{T}}{n_{T}} + \frac{\sigma^{2}_{C}}{n_{C}}}$$
For a binary outcome, the required information to estimate the risk difference $\delta_{RD} = E[Y^{(1)}] - E[Y^{(0)}]$ depends on the response rate in the control arm $(\pi_{C} = \pi_{T} - \delta)$:
$$SE(\delta) = \sqrt{\frac{\pi_{T}(1 - \pi_{T})}{n_{T}} + \frac{\pi_{C}(1 - \pi_{C})}{n_{C}}}$$
For an ordinal outcome with $K$ categories, let $\pi_{A}^{K} = Pr\{Y^{(A)} = k\}$ denote the probability of an outcome in category $k$ under treatment $A$. The Mann-Whitney estimand $\phi$ is the probability of having an outcome as good or better under the treatment arm relative to control with an adjustment for ties:
$$\phi = Pr\{Y^{(T)} > Y^{(C)}\} + \frac{1}{2} Pr\{Y^{(T)} = Y^{(C)}\}$$
This is also known as the competing probability. The precision/information depends on $\phi$ [@Fay2018]:
$$SE(\delta) \approx \sqrt{\frac{\phi(1 - \phi)}{n_{T}n_{C}}\left(1 + \left(\frac{n_{T} + n_{C} - 2}{2}\right)\left(\frac{\phi}{1 + \phi} + \frac{1 - \phi}{2 - \phi} \right)\right)}$$
Alternatively, the precision/information can be obtained from the distribution of outcomes under each treatment arm [@Zhao2008]. Let $N = n_{T} + n_{C}$:
$$SE(\delta) = \sqrt{\frac{1}{12(n_{T}n_{C})}\left(N+1 - \frac{1}{N(N-1)}\right)\sum_{k = 1}^{K}(\pi_{T}^{k}n_{T} + \pi_{C}^{k}n_{C})}$$
Expressions for the information for other estimands can be obtained elsewhere [@Jennison1999]. In practice, the parameters in these expressions are not precisely known a priori. The advantage of an information monitoring design is that the sample size is not fixed a priori based on estimates of these parameters, but adapts automatically to the precision of the accruing data.
--------------------------------------------------------------------------------
### Covariate Adjustment in Randomized Trials
Covariate adjusted analyses can also give greater precision than an unadjusted analyses without introducing more stringent assumptions, however the amount of precision gained in adjusted analyses are also not precisely known a priori [@Benkeser2020]. Instead of predicating the design on assumptions about the potential gain in precision from covariate adjustment, a precision-adaptive design automatically adjusts the sample size accordingly.
The relative efficiency of a covariate adjusted estimator to an unadjusted estimator is $RE_{A/U} = Var(\theta_{U})/Var(\theta_{A})$. The relative change in variance of a covariate-adjusted analysis to an unadjusted analysis is:
$$RCV_{A/U} = \frac{Var(\theta_{A}) - Var(\theta_{U})}{Var(\theta_{U})} = \frac{1}{RE_{A/U}} - 1$$
Alternatively, $RE_{A/U} = 1/(1 + RCV_{A/U})$: If a covariate adjusted analysis has a relative efficiency of `r example_re`, the relative change in variance would be `r example_rcv`, or a `r paste0(example_pcv, "%")` change in variance. Since precision is the inverse of variance, the relative change in precision of a covariate-adjusted analysis to an unadjusted analysis is:
$$RCP_{A/U} = \frac{1/Var(\theta_{A}) - 1/Var(\theta_{U})}{1/Var(\theta_{U})} = Var(\theta_{U})/Var(\theta_{A}) - 1 = RE_{A/U} - 1$$
Alternatively, $RE_{A/U} = 1 + RCP_{A/U}$: If a covariate adjusted analysis has a relative efficiency of `r example_re`, the relative change in precision would be `r example_rcp`, or a `r paste0(example_pcp, "%")` change in precision.
--------------------------------------------------------------------------------
### Sequential Analyses
Pre-planned interim analyses allow investigators to stop a randomized trial early for efficacy or futility [@Jennison1999]. Precision-adaptive trials can integrate both interim analyses and covariate adjustment, using a broad class of methods [@VanLancker2022]. @Mehta2001 illustrate information-adaptive designs in practice. For a tutorial on implementing interim analyses, see @Lakens2021.
--------------------------------------------------------------------------------
## References