tm_t_events_summary {teal.modules.clinical} | R Documentation |
teal Module: Adverse Events Summary
Description
This module produces an adverse events summary table.
Usage
tm_t_events_summary(
label,
dataname,
parentname = ifelse(inherits(arm_var, "data_extract_spec"),
teal.transform::datanames_input(arm_var), "ADSL"),
arm_var,
flag_var_anl = NULL,
flag_var_aesi = NULL,
dthfl_var =
teal.transform::choices_selected(teal.transform::variable_choices(parentname,
"DTHFL"), "DTHFL", fixed = TRUE),
dcsreas_var =
teal.transform::choices_selected(teal.transform::variable_choices(parentname,
"DCSREAS"), "DCSREAS", fixed = TRUE),
llt = teal.transform::choices_selected(teal.transform::variable_choices(dataname,
"AEDECOD"), "AEDECOD", fixed = TRUE),
aeseq_var = teal.transform::choices_selected(teal.transform::variable_choices(dataname,
"AESEQ"), "AESEQ", fixed = TRUE),
add_total = TRUE,
total_label = default_total_label(),
na_level = default_na_str(),
count_subj = TRUE,
count_pt = TRUE,
count_events = TRUE,
pre_output = NULL,
post_output = NULL,
basic_table_args = teal.widgets::basic_table_args()
)
Arguments
label |
( |
dataname |
( |
parentname |
( |
arm_var |
( |
flag_var_anl |
( |
flag_var_aesi |
( |
dthfl_var |
( |
dcsreas_var |
( |
llt |
( |
aeseq_var |
( |
add_total |
( |
total_label |
( |
na_level |
( |
count_subj |
( |
count_pt |
( |
count_events |
( |
pre_output |
( |
post_output |
( |
basic_table_args |
( |
Value
a teal_module
object.
See Also
The TLG Catalog where additional example apps implementing this module can be found.
Examples
library(dplyr)
data <- teal_data()
data <- within(data, {
ADSL <- tmc_ex_adsl %>%
mutate(
DTHFL = case_when(
!is.na(DTHDT) ~ "Y",
TRUE ~ ""
) %>% with_label("Subject Death Flag")
)
ADAE <- tmc_ex_adae
add_event_flags <- function(dat) {
dat <- dat %>%
mutate(
TMPFL_SER = AESER == "Y",
TMPFL_REL = AEREL == "Y",
TMPFL_GR5 = AETOXGR == "5",
TMP_SMQ01 = !is.na(SMQ01NAM),
TMP_SMQ02 = !is.na(SMQ02NAM),
TMP_CQ01 = !is.na(CQ01NAM)
)
column_labels <- list(
TMPFL_SER = "Serious AE",
TMPFL_REL = "Related AE",
TMPFL_GR5 = "Grade 5 AE",
TMP_SMQ01 = aesi_label(dat[["SMQ01NAM"]], dat[["SMQ01SC"]]),
TMP_SMQ02 = aesi_label("Y.9.9.9.9/Z.9.9.9.9 AESI"),
TMP_CQ01 = aesi_label(dat[["CQ01NAM"]])
)
col_labels(dat)[names(column_labels)] <- as.character(column_labels)
dat
}
#' Generating user-defined event flags.
ADAE <- ADAE %>% add_event_flags()
ae_anl_vars <- names(ADAE)[startsWith(names(ADAE), "TMPFL_")]
aesi_vars <- names(ADAE)[startsWith(names(ADAE), "TMP_")]
})
datanames <- c("ADSL", "ADAE")
datanames(data) <- datanames
join_keys(data) <- default_cdisc_join_keys[datanames]
app <- init(
data = data,
modules = modules(
tm_t_events_summary(
label = "Adverse Events Summary",
dataname = "ADAE",
arm_var = choices_selected(
choices = variable_choices("ADSL", c("ARM", "ARMCD")),
selected = "ARM"
),
flag_var_anl = choices_selected(
choices = variable_choices("ADAE", data[["ae_anl_vars"]]),
selected = data[["ae_anl_vars"]][1],
keep_order = TRUE,
fixed = FALSE
),
flag_var_aesi = choices_selected(
choices = variable_choices("ADAE", data[["aesi_vars"]]),
selected = data[["aesi_vars"]][1],
keep_order = TRUE,
fixed = FALSE
),
add_total = TRUE
)
)
)
if (interactive()) {
shinyApp(app$ui, app$server)
}