You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: vignettes/sampleSize_parallel_3A3E.Rmd
+26-26Lines changed: 26 additions & 26 deletions
Original file line number
Diff line number
Diff line change
@@ -23,11 +23,11 @@ doc.cache <- T #for cran; change to F
23
23
```
24
24
25
25
# Introduction
26
-
Similar to the example presented in [Bioequivalence Tests for Parallel Trial Designs: 2 Arms, 3 Endpoints](sampleSize_parallel_2A3E.html), where equivalence across multiple endpoints was assessed, we now extend the framework to trials involving two reference products. This scenario arises when regulators from different regions require comparisons with their locally sourced reference biosimilars.
26
+
Similar to the example presented in [Bioequivalence Tests for Parallel Trial Designs: 2 Arms, 3 Endpoints](sampleSize_parallel_2A3E.html), where equivalence across multiple endpoints was assessed, this vignette extends the framework to trials involving two reference products. This scenario arises when regulators from different regions require comparisons with their locally sourced reference biosimilars.
27
27
28
-
In many studies, it is necessary to evaluate equivalence across multiple primary variables. For example, the European Medicines Agency (EMA) recommends demonstrating equivalence for both the Area Under the Curve (AUC) and the maximum concentration (Cmax) when assessing pharmacokinetic properties. However, in this case, we evaluate equivalence across three treatment arms, including a test biosimilar and two reference products, each sourced from a different regulatory region.
28
+
In many studies, the aim is to evaluate equivalence across multiple primary variables. For example, the European Medicines Agency (EMA) recommends demonstrating equivalence for both the Area Under the Curve (AUC) and the maximum concentration (Cmax) when endpoints. In this scenario, we additionally evaluate equivalence across three treatment arms, including a test biosimilar and two reference products, each sourced from a different regulatory region.
29
29
30
-
This vignette demonstrates advanced techniques for calculating sample size in such trials, where both multiple endpoints and multiple reference products are considered. As an illustrative example, we use data from the phase-1 trial [NCT01922336](https://clinicaltrials.gov/study/NCT01922336#study-overview), which assessed pharmacokinetics following a single dose of SB2, its EU-sourced reference product (EU-INF), and its US-sourced reference product (US-INF) [@shin_randomized_2015].
30
+
This vignette demonstrates advanced techniques for calculating sample size in such trials, in which multiple endpoints and multiple reference products are considered. As an illustrative example, we use data from the phase1 trial [NCT01922336](https://clinicaltrials.gov/study/NCT01922336#study-overview), which assessed pharmacokinetic (PK) endpoints following a single dose of SB2, its EU-sourced reference product (EU-INF), and its US-sourced reference product (US-INF) [@shin_randomized_2015].
31
31
32
32
```{r inputdata, echo=FALSE}
33
33
@@ -53,12 +53,12 @@ As in [this vignette](sampleSize_parallel_2A3E.html), the following inputs are r
53
53
* Arms to be compared within each comparator (`list_comparator`),
54
54
* Endpoints to be compared within each comparator (`list_y_comparator`).
55
55
56
-
In this example, we simultaneously compare each biosimilar:
56
+
In this example, we simultaneously compare the trial drug (SB2) to each reference biosimilar:
57
57
58
-
* SB2 vs. EU Remicade
59
-
* SB2 vs. US Remicade
58
+
* SB2 vs. EU-INF
59
+
* SB2 vs. US-INF
60
60
61
-
Below is the R code to define the required data:
61
+
We define the required list objects:
62
62
63
63
```{r}
64
64
# Mean values for each endpoint and arm
@@ -89,7 +89,7 @@ In this example, we aim to demonstrate:
89
89
* Bioequivalence of SB2 vs. EU-INF for AUCinf and Cmax, and
90
90
* Bioequivalence of SB2 vs. US-INF for AUClast and Cmax.
91
91
92
-
The comparisons can be specified as follows:
92
+
The comparisons are specified as follows:
93
93
94
94
```{r}
95
95
# Arms to be compared
@@ -107,7 +107,7 @@ list_y_comparator <- list(
107
107
108
108
For all endpoints, bioequivalence is established if the 90% confidence intervals for the ratios of the geometric means fall within the equivalence range of 80.00% to 125.00%.
109
109
110
-
Below is the R code to define the equivalence boundaries for each comparison:
110
+
Below we define the equivalence boundaries for each comparison:
111
111
112
112
```{r}
113
113
# Define comparators and equivalence boundaries
@@ -127,9 +127,9 @@ list_uequi.tol <- list(
127
127
)
128
128
```
129
129
130
-
Here, the `list_comparator` parameter specifies the arms being compared, while `list_lequi.tol` and `list_uequi.tol` define the lower and upper equivalence boundaries for the endpoints under consideration.
130
+
Here, the `list_comparator` parameter specifies the arms being compared, while `list_lequi.tol` and `list_uequi.tol` define the lower and upper equivalence boundaries for the two endpoints.
131
131
132
-
To calculate the required sample size for testing equivalence under the specified conditions, we use the [sampleSize()](../reference/sampleSize.html) function from the SimTOST package. This function computes the total sample size needed to achieve the target power while ensuring equivalence criteria are met.
132
+
To calculate the required sample size for testing equivalence under the specified conditions, we use the [sampleSize()](../reference/sampleSize.html) function. This function computes the total sample size needed to achieve the target power while ensuring equivalence criteria are met.
133
133
134
134
```{r}
135
135
library(SimTOST)
@@ -151,22 +151,22 @@ library(SimTOST)
151
151
seed = 1234)) # Random seed for reproducibility
152
152
```
153
153
154
-
We find a total sample size of `r N_ss$response$n_total` patients (or `r N_ss$response$n_total/3` per arm) are required to demonstrate equivalence.
154
+
A total sample size of `r N_ss$response$n_total` patients (or `r N_ss$response$n_total/3` per arm) is required to demonstrate equivalence.
155
155
156
156
# Simultaneous Testing of Independent Primary Endpoints
157
157
158
158
## Equivalence for At Least 2 of the 3 Endpoints with Bonferroni Adjustment
159
159
In this example, we aim to establish equivalence for at least two out of three primary endpoints while accounting for multiplicity using the Bonferroni adjustment. The following assumptions are made:
160
160
161
-
* Equality of Variances: Variances are assumed to be equal across groups (`vareq = TRUE`).
162
-
* Testing Parameter: The Ratio of Means (ROM) is used as the testing parameter (`ctype = "ROM"`).
163
-
* Design: A parallel trial design is assumed (`dtype = "parallel"`).
164
-
* Distribution: Endpoint data follows a log-normal distribution (`lognorm = TRUE`).
165
-
* Correlation: Endpoints are assumed to be independent, with no correlation between them (default `rho = 0`).
166
-
* Multiplicity Adjustment: The Bonferroni correction is applied to control for Type I error (`adjust = "bon"`).
167
-
* Equivalence Criterion: Equivalence is required for at least two of the three endpoints (`k = 2`).
161
+
* Equality of Variances: variances are assumed to be equal across groups (`vareq = TRUE`).
162
+
* Testing Parameter: the Ratio of Means (ROM) is used as the testing parameter (`ctype = "ROM"`).
163
+
* Design: a parallel trial design is assumed (`dtype = "parallel"`).
164
+
* Distribution: endpoint data follows a log-normal distribution (`lognorm = TRUE`).
165
+
* Correlation: endpoints are assumed to be independent, with no correlation between them (default `rho = 0`).
166
+
* Multiplicity Adjustment: the Bonferroni correction is applied to control for Type I error (`adjust = "bon"`).
167
+
* Equivalence Criterion: equivalence is required for at least two of the three endpoints (`k = 2`).
168
168
169
-
The comparisons and equivalence boundaries can be defined as follows:
169
+
The comparisons and equivalence boundaries are defined as follows:
170
170
171
171
```{r}
172
172
# Endpoints to be compared for each comparator
@@ -211,9 +211,9 @@ Finally, we calculate the required sample size:
211
211
```
212
212
213
213
## Unequal Allocation Rates Across Arms
214
-
In this example, we build upon the previous setting but introduce unequal allocation rates across the treatment arms. Specifically, we require that the number of patients in the new treatment arm is double the number in each of the reference arms.
214
+
In this example, we build upon the previous scenario but introduce unequal allocation rates across treatment arms. Specifically, we require that the number of patients in the new treatment arm is double the number in each of the reference arms.
215
215
216
-
This can be achieved by specifying the treatment allocation rate parameter (`TAR`). The rates are provided as a vector, for example: `TAR = c(2, 1, 1)`. This ensures that for every two patients assigned to the new treatment arm, one patient is assigned to each reference arm.
216
+
This can be achieved by specifying the treatment allocation rate parameter (`TAR`). Rates are provided as a vector, for example: `TAR = c(2, 1, 1)`. This ensures that for every two patients assigned to the new treatment arm, one patient is assigned to each reference arm.
217
217
218
218
```{r}
219
219
(N_mp2 <- sampleSize(power = 0.9, # Target power
@@ -236,10 +236,10 @@ This can be achieved by specifying the treatment allocation rate parameter (`TAR
236
236
seed = 1234)) # Random seed for reproducibility
237
237
```
238
238
239
-
Results from the simulation indicate that `r N_mp2$response$n_SB2` patients are required for SB2 the active treatment arm (SB2), and `r N_mp2$response$n_EUINF` patients are required for each reference arm. The total sample size required is `r N_mp2$response$n_total`, which is larger compared to the trial with an equal allocation ratio, where the total sample size was `r N_mp$response$n_total`.
239
+
Results indicate that `r N_mp2$response$n_SB2` patients are required for the active treatment arm (SB2), and `r N_mp2$response$n_EUINF` patients are required for each reference arm. The total sample size required is `r N_mp2$response$n_total`, which is larger compared to the trial with an equal allocation ratio, for which the total sample size was `r N_mp$response$n_total`.
240
240
241
-
## Accounting for Dropouts
242
-
In the examples above, the sample size calculations assumed that all patients enrolled in the trial would complete it. However, in practice, a certain percentage of participants typically drop out, which can impact the required sample size. To account for this, we consider a 20% dropout rate across all treatment arms in this example.
241
+
## Accounting for Participant Dropout
242
+
In the examples above, the sample size calculations assumed that all enrolled patients complete the trial. However, in practice, a certain percentage of participants drop out, which can impact the required sample size. To account for this, we consider a 20% dropout rate across all treatment arms.
243
243
244
244
```{r}
245
245
(N_mp3 <- sampleSize(power = 0.9, # Target power
@@ -263,6 +263,6 @@ In the examples above, the sample size calculations assumed that all patients en
263
263
seed = 1234)) # Random seed for reproducibility
264
264
```
265
265
266
-
Based on the output above, considering a 20% dropout rate, the total sample size required is `r N_mp3$response$n_total`.
266
+
Considering a 20% dropout rate, the total sample size required is `r N_mp3$response$n_total`.
0 commit comments