
Subject Populations, Randomized Population, Pooled Analysis (or Trial X)
FDA Table 04
table
FDA
safety
disposition
FDA IG Shell
Programming Notes
Background and Instructions
The following trial populations are reflected in Table 4: Subject Populations below:
• Intent-to-treat population (ITT): Includes every subject who is randomized according to randomized trial arm assignment.
• Modified intent-to-treat population (mITT): Subset of the intent-to-treat population that excludes a predefined subject population.
• Safety population: All subjects considered in the safety analyses who received at least one dose of the study drug in the trials or studies submitted.
• Per-protocol population: Only those subjects who completed the treatment originally allocated and planned without specified protocol violations.
Customization
Output
Code
# FDA TABLE 04 ---------------------------------------------------------------
# Self-contained template. Run top-to-bottom to build the objects below.
# Used by tests via run_template() and published in the catalog.
library(dplyr)
library(gtsummary)
adsl <- pharmaverseadam::adsl |>
filter(TRT01A != "Screen Failure") # Remove screen failure observations
# Pre-processing --------------------------------------------
pop_vars <- c("rand_fl", "ITTFL", "SAFFL", "prot_fl")
lbl_pop_vars <- c("Subjects randomized", "ITT population", "Safety population", "Per-protocol population")
data <- adsl |>
mutate(
across(all_of("SAFFL"), ~ . == "Y"),
ITTFL = !is.na(RANDDT),
rand_fl = !is.na(RANDDT),
prot_fl = EOSSTT == "COMPLETED"
)
tbl <- data |>
tbl_summary(
by = "TRT01A",
statistic = list(all_dichotomous() ~ "{n} ({p}%)"),
include = all_of(pop_vars),
digits = list(all_categorical() ~ c(0, 1)),
label = as.list(lbl_pop_vars) |> setNames(pop_vars)
) |>
# Define which variables are children of parent variables
modify_indent(
columns = "label",
rows = variable != "rand_fl",
indent = 4L
) |>
modify_header(label = "**Population**")
ard <- gtsummary::gather_ard(tbl)| Population |
Placebo N = 861 |
Xanomeline High Dose N = 721 |
Xanomeline Low Dose N = 961 |
|---|---|---|---|
| Subjects randomized | 86 (100.0%) | 72 (100.0%) | 96 (100.0%) |
| ITT population | 86 (100.0%) | 72 (100.0%) | 96 (100.0%) |
| Safety population | 86 (100.0%) | 72 (100.0%) | 96 (100.0%) |
| Per-protocol population | 58 (67.4%) | 27 (37.5%) | 25 (26.0%) |
| 1 n (%) | |||
$tbl_summary
# An ARD data frame: 116 × 12
group1 group1_level variable variable_level context stat_name stat_label stat fmt_fun warning error gts_column
<chr> <list> <chr> <list> <chr> <chr> <chr> <list> <list> <list> <list> <chr>
1 TRT01A Placebo SAFFL TRUE tabulate_value n n 86 <fn> <NULL> <NULL> stat_1
2 TRT01A Placebo SAFFL TRUE tabulate_value N N 86 0 <NULL> <NULL> stat_1
3 TRT01A Placebo SAFFL TRUE tabulate_value p % 1 <fn> <NULL> <NULL> stat_1
4 TRT01A Placebo ITTFL TRUE tabulate_value n n 86 <fn> <NULL> <NULL> stat_1
5 TRT01A Placebo ITTFL TRUE tabulate_value N N 86 0 <NULL> <NULL> stat_1
6 TRT01A Placebo ITTFL TRUE tabulate_value p % 1 <fn> <NULL> <NULL> stat_1
7 TRT01A Placebo rand_fl TRUE tabulate_value n n 86 <fn> <NULL> <NULL> stat_1
8 TRT01A Placebo rand_fl TRUE tabulate_value N N 86 0 <NULL> <NULL> stat_1
9 TRT01A Placebo rand_fl TRUE tabulate_value p % 1 <fn> <NULL> <NULL> stat_1
10 TRT01A Placebo prot_fl TRUE tabulate_value n n 58 <fn> <NULL> <NULL> stat_1
11 TRT01A Placebo prot_fl TRUE tabulate_value N N 86 0 <NULL> <NULL> stat_1
12 TRT01A Placebo prot_fl TRUE tabulate_value p % 0.6744186 <fn> <NULL> <NULL> stat_1
13 TRT01A Xanomeline High Dose SAFFL TRUE tabulate_value n n 72 <fn> <NULL> <NULL> stat_2
14 TRT01A Xanomeline High Dose SAFFL TRUE tabulate_value N N 72 0 <NULL> <NULL> stat_2
15 TRT01A Xanomeline High Dose SAFFL TRUE tabulate_value p % 1 <fn> <NULL> <NULL> stat_2
16 TRT01A Xanomeline High Dose ITTFL TRUE tabulate_value n n 72 <fn> <NULL> <NULL> stat_2
17 TRT01A Xanomeline High Dose ITTFL TRUE tabulate_value N N 72 0 <NULL> <NULL> stat_2
18 TRT01A Xanomeline High Dose ITTFL TRUE tabulate_value p % 1 <fn> <NULL> <NULL> stat_2
19 TRT01A Xanomeline High Dose rand_fl TRUE tabulate_value n n 72 <fn> <NULL> <NULL> stat_2
20 TRT01A Xanomeline High Dose rand_fl TRUE tabulate_value N N 72 0 <NULL> <NULL> stat_2
21 TRT01A Xanomeline High Dose rand_fl TRUE tabulate_value p % 1 <fn> <NULL> <NULL> stat_2
22 TRT01A Xanomeline High Dose prot_fl TRUE tabulate_value n n 27 <fn> <NULL> <NULL> stat_2
23 TRT01A Xanomeline High Dose prot_fl TRUE tabulate_value N N 72 0 <NULL> <NULL> stat_2
24 TRT01A Xanomeline High Dose prot_fl TRUE tabulate_value p % 0.375 <fn> <NULL> <NULL> stat_2
25 TRT01A Xanomeline Low Dose SAFFL TRUE tabulate_value n n 96 <fn> <NULL> <NULL> stat_3
26 TRT01A Xanomeline Low Dose SAFFL TRUE tabulate_value N N 96 0 <NULL> <NULL> stat_3
27 TRT01A Xanomeline Low Dose SAFFL TRUE tabulate_value p % 1 <fn> <NULL> <NULL> stat_3
28 TRT01A Xanomeline Low Dose ITTFL TRUE tabulate_value n n 96 <fn> <NULL> <NULL> stat_3
29 TRT01A Xanomeline Low Dose ITTFL TRUE tabulate_value N N 96 0 <NULL> <NULL> stat_3
30 TRT01A Xanomeline Low Dose ITTFL TRUE tabulate_value p % 1 <fn> <NULL> <NULL> stat_3
31 TRT01A Xanomeline Low Dose rand_fl TRUE tabulate_value n n 96 <fn> <NULL> <NULL> stat_3
32 TRT01A Xanomeline Low Dose rand_fl TRUE tabulate_value N N 96 0 <NULL> <NULL> stat_3
33 TRT01A Xanomeline Low Dose rand_fl TRUE tabulate_value p % 1 <fn> <NULL> <NULL> stat_3
34 TRT01A Xanomeline Low Dose prot_fl TRUE tabulate_value n n 25 <fn> <NULL> <NULL> stat_3
35 TRT01A Xanomeline Low Dose prot_fl TRUE tabulate_value N N 96 0 <NULL> <NULL> stat_3
36 TRT01A Xanomeline Low Dose prot_fl TRUE tabulate_value p % 0.2604167 <fn> <NULL> <NULL> stat_3
37 <NA> <NULL> rand_fl <NULL> attributes label Variable Label Subjects randomized <fn> <NULL> <NULL> <NA>
38 <NA> <NULL> rand_fl <NULL> attributes class Variable Class logical <NULL> <NULL> <NULL> <NA>
39 <NA> <NULL> ITTFL <NULL> attributes label Variable Label ITT population <fn> <NULL> <NULL> <NA>
40 <NA> <NULL> ITTFL <NULL> attributes class Variable Class logical <NULL> <NULL> <NULL> <NA>
41 <NA> <NULL> SAFFL <NULL> attributes label Variable Label Safety population <fn> <NULL> <NULL> <NA>
42 <NA> <NULL> SAFFL <NULL> attributes class Variable Class logical <NULL> <NULL> <NULL> <NA>
43 <NA> <NULL> prot_fl <NULL> attributes label Variable Label Per-protocol population <fn> <NULL> <NULL> <NA>
44 <NA> <NULL> prot_fl <NULL> attributes class Variable Class logical <NULL> <NULL> <NULL> <NA>
45 <NA> <NULL> TRT01A <NULL> attributes label Variable Label Actual Treatment for Period 01 <fn> <NULL> <NULL> <NA>
46 <NA> <NULL> TRT01A <NULL> attributes class Variable Class character <NULL> <NULL> <NULL> <NA>
47 TRT01A Placebo rand_fl <NULL> missing N_obs No. obs. 86 <fn> <NULL> <NULL> stat_1
48 TRT01A Placebo rand_fl <NULL> missing N_miss N Missing 0 <fn> <NULL> <NULL> stat_1
49 TRT01A Placebo rand_fl <NULL> missing N_nonmiss N Non-missing 86 <fn> <NULL> <NULL> stat_1
50 TRT01A Placebo rand_fl <NULL> missing p_miss % Missing 0 <fn> <NULL> <NULL> stat_1
51 TRT01A Placebo rand_fl <NULL> missing p_nonmiss % Non-missing 1 <fn> <NULL> <NULL> stat_1
52 TRT01A Placebo ITTFL <NULL> missing N_obs No. obs. 86 <fn> <NULL> <NULL> stat_1
53 TRT01A Placebo ITTFL <NULL> missing N_miss N Missing 0 <fn> <NULL> <NULL> stat_1
54 TRT01A Placebo ITTFL <NULL> missing N_nonmiss N Non-missing 86 <fn> <NULL> <NULL> stat_1
55 TRT01A Placebo ITTFL <NULL> missing p_miss % Missing 0 <fn> <NULL> <NULL> stat_1
56 TRT01A Placebo ITTFL <NULL> missing p_nonmiss % Non-missing 1 <fn> <NULL> <NULL> stat_1
57 TRT01A Placebo SAFFL <NULL> missing N_obs No. obs. 86 <fn> <NULL> <NULL> stat_1
58 TRT01A Placebo SAFFL <NULL> missing N_miss N Missing 0 <fn> <NULL> <NULL> stat_1
59 TRT01A Placebo SAFFL <NULL> missing N_nonmiss N Non-missing 86 <fn> <NULL> <NULL> stat_1
60 TRT01A Placebo SAFFL <NULL> missing p_miss % Missing 0 <fn> <NULL> <NULL> stat_1
61 TRT01A Placebo SAFFL <NULL> missing p_nonmiss % Non-missing 1 <fn> <NULL> <NULL> stat_1
62 TRT01A Placebo prot_fl <NULL> missing N_obs No. obs. 86 <fn> <NULL> <NULL> stat_1
63 TRT01A Placebo prot_fl <NULL> missing N_miss N Missing 0 <fn> <NULL> <NULL> stat_1
64 TRT01A Placebo prot_fl <NULL> missing N_nonmiss N Non-missing 86 <fn> <NULL> <NULL> stat_1
65 TRT01A Placebo prot_fl <NULL> missing p_miss % Missing 0 <fn> <NULL> <NULL> stat_1
66 TRT01A Placebo prot_fl <NULL> missing p_nonmiss % Non-missing 1 <fn> <NULL> <NULL> stat_1
67 TRT01A Xanomeline High Dose rand_fl <NULL> missing N_obs No. obs. 72 <fn> <NULL> <NULL> stat_2
68 TRT01A Xanomeline High Dose rand_fl <NULL> missing N_miss N Missing 0 <fn> <NULL> <NULL> stat_2
69 TRT01A Xanomeline High Dose rand_fl <NULL> missing N_nonmiss N Non-missing 72 <fn> <NULL> <NULL> stat_2
70 TRT01A Xanomeline High Dose rand_fl <NULL> missing p_miss % Missing 0 <fn> <NULL> <NULL> stat_2
71 TRT01A Xanomeline High Dose rand_fl <NULL> missing p_nonmiss % Non-missing 1 <fn> <NULL> <NULL> stat_2
72 TRT01A Xanomeline High Dose ITTFL <NULL> missing N_obs No. obs. 72 <fn> <NULL> <NULL> stat_2
73 TRT01A Xanomeline High Dose ITTFL <NULL> missing N_miss N Missing 0 <fn> <NULL> <NULL> stat_2
74 TRT01A Xanomeline High Dose ITTFL <NULL> missing N_nonmiss N Non-missing 72 <fn> <NULL> <NULL> stat_2
75 TRT01A Xanomeline High Dose ITTFL <NULL> missing p_miss % Missing 0 <fn> <NULL> <NULL> stat_2
76 TRT01A Xanomeline High Dose ITTFL <NULL> missing p_nonmiss % Non-missing 1 <fn> <NULL> <NULL> stat_2
77 TRT01A Xanomeline High Dose SAFFL <NULL> missing N_obs No. obs. 72 <fn> <NULL> <NULL> stat_2
78 TRT01A Xanomeline High Dose SAFFL <NULL> missing N_miss N Missing 0 <fn> <NULL> <NULL> stat_2
79 TRT01A Xanomeline High Dose SAFFL <NULL> missing N_nonmiss N Non-missing 72 <fn> <NULL> <NULL> stat_2
80 TRT01A Xanomeline High Dose SAFFL <NULL> missing p_miss % Missing 0 <fn> <NULL> <NULL> stat_2
81 TRT01A Xanomeline High Dose SAFFL <NULL> missing p_nonmiss % Non-missing 1 <fn> <NULL> <NULL> stat_2
82 TRT01A Xanomeline High Dose prot_fl <NULL> missing N_obs No. obs. 72 <fn> <NULL> <NULL> stat_2
83 TRT01A Xanomeline High Dose prot_fl <NULL> missing N_miss N Missing 0 <fn> <NULL> <NULL> stat_2
84 TRT01A Xanomeline High Dose prot_fl <NULL> missing N_nonmiss N Non-missing 72 <fn> <NULL> <NULL> stat_2
85 TRT01A Xanomeline High Dose prot_fl <NULL> missing p_miss % Missing 0 <fn> <NULL> <NULL> stat_2
86 TRT01A Xanomeline High Dose prot_fl <NULL> missing p_nonmiss % Non-missing 1 <fn> <NULL> <NULL> stat_2
87 TRT01A Xanomeline Low Dose rand_fl <NULL> missing N_obs No. obs. 96 <fn> <NULL> <NULL> stat_3
88 TRT01A Xanomeline Low Dose rand_fl <NULL> missing N_miss N Missing 0 <fn> <NULL> <NULL> stat_3
89 TRT01A Xanomeline Low Dose rand_fl <NULL> missing N_nonmiss N Non-missing 96 <fn> <NULL> <NULL> stat_3
90 TRT01A Xanomeline Low Dose rand_fl <NULL> missing p_miss % Missing 0 <fn> <NULL> <NULL> stat_3
91 TRT01A Xanomeline Low Dose rand_fl <NULL> missing p_nonmiss % Non-missing 1 <fn> <NULL> <NULL> stat_3
92 TRT01A Xanomeline Low Dose ITTFL <NULL> missing N_obs No. obs. 96 <fn> <NULL> <NULL> stat_3
93 TRT01A Xanomeline Low Dose ITTFL <NULL> missing N_miss N Missing 0 <fn> <NULL> <NULL> stat_3
94 TRT01A Xanomeline Low Dose ITTFL <NULL> missing N_nonmiss N Non-missing 96 <fn> <NULL> <NULL> stat_3
95 TRT01A Xanomeline Low Dose ITTFL <NULL> missing p_miss % Missing 0 <fn> <NULL> <NULL> stat_3
96 TRT01A Xanomeline Low Dose ITTFL <NULL> missing p_nonmiss % Non-missing 1 <fn> <NULL> <NULL> stat_3
97 TRT01A Xanomeline Low Dose SAFFL <NULL> missing N_obs No. obs. 96 <fn> <NULL> <NULL> stat_3
98 TRT01A Xanomeline Low Dose SAFFL <NULL> missing N_miss N Missing 0 <fn> <NULL> <NULL> stat_3
99 TRT01A Xanomeline Low Dose SAFFL <NULL> missing N_nonmiss N Non-missing 96 <fn> <NULL> <NULL> stat_3
100 TRT01A Xanomeline Low Dose SAFFL <NULL> missing p_miss % Missing 0 <fn> <NULL> <NULL> stat_3
101 TRT01A Xanomeline Low Dose SAFFL <NULL> missing p_nonmiss % Non-missing 1 <fn> <NULL> <NULL> stat_3
102 TRT01A Xanomeline Low Dose prot_fl <NULL> missing N_obs No. obs. 96 <fn> <NULL> <NULL> stat_3
103 TRT01A Xanomeline Low Dose prot_fl <NULL> missing N_miss N Missing 0 <fn> <NULL> <NULL> stat_3
104 TRT01A Xanomeline Low Dose prot_fl <NULL> missing N_nonmiss N Non-missing 96 <fn> <NULL> <NULL> stat_3
105 TRT01A Xanomeline Low Dose prot_fl <NULL> missing p_miss % Missing 0 <fn> <NULL> <NULL> stat_3
106 TRT01A Xanomeline Low Dose prot_fl <NULL> missing p_nonmiss % Non-missing 1 <fn> <NULL> <NULL> stat_3
107 <NA> <NULL> ..ard_total_n.. <NULL> total_n N N 254 0 <NULL> <NULL> <NA>
108 <NA> <NULL> TRT01A Placebo tabulate n n 86 0 <NULL> <NULL> <NA>
109 <NA> <NULL> TRT01A Placebo tabulate N N 254 0 <NULL> <NULL> <NA>
110 <NA> <NULL> TRT01A Placebo tabulate p % 0.3385827 <fn> <NULL> <NULL> <NA>
111 <NA> <NULL> TRT01A Xanomeline High Dose tabulate n n 72 0 <NULL> <NULL> <NA>
112 <NA> <NULL> TRT01A Xanomeline High Dose tabulate N N 254 0 <NULL> <NULL> <NA>
113 <NA> <NULL> TRT01A Xanomeline High Dose tabulate p % 0.2834646 <fn> <NULL> <NULL> <NA>
114 <NA> <NULL> TRT01A Xanomeline Low Dose tabulate n n 96 0 <NULL> <NULL> <NA>
115 <NA> <NULL> TRT01A Xanomeline Low Dose tabulate N N 254 0 <NULL> <NULL> <NA>
116 <NA> <NULL> TRT01A Xanomeline Low Dose tabulate p % 0.3779528 <fn> <NULL> <NULL> <NA>
