This module produces a table of multiple events by term.
Usage
tm_t_mult_events(
label,
dataname,
parentname = ifelse(inherits(arm_var, "data_extract_spec"),
teal.transform::datanames_input(arm_var), "ADSL"),
arm_var,
seq_var,
hlt,
llt,
add_total = TRUE,
total_label = default_total_label(),
na_level = default_na_str(),
event_type = "event",
drop_arm_levels = TRUE,
pre_output = NULL,
post_output = NULL,
basic_table_args = teal.widgets::basic_table_args()
)Arguments
- label
(
character)
menu item label of the module in the teal app.- dataname
(
character)
analysis data used in teal module.- parentname
(
character)
parent analysis data used in teal module, usually this refers toADSL.- arm_var
(
teal.transform::choices_selected())
object with all available choices and preselected option for variable names that can be used asarm_var. It defines the grouping variable(s) in the results table. If there are two elements selected forarm_var, second variable will be nested under the first variable.- seq_var
(
teal.transform::choices_selected())
object with all available choices and preselected option for variable names that can be used as analysis sequence number variable. Used for counting the unique number of events.- hlt
(
teal.transform::choices_selected())
name of the variable with high level term for events.- llt
(
teal.transform::choices_selected())
name of the variable with low level term for events.- add_total
(
logical)
whether to include column with total number of patients.- total_label
(
string)
string to display as total column/row label if column/row is enabled (seeadd_total). Defaults to"All Patients". To set a new defaulttotal_labelto apply in all modules, runset_default_total_label("new_default").- na_level
(
string)
used to replace allNAor empty values in character or factor variables in the data. Defaults to"<Missing>". To set a defaultna_levelto apply in all modules, runset_default_na_str("new_default").- event_type
(
character)
type of event that is summarized (e.g. adverse event, treatment). Default is"event".- drop_arm_levels
(
logical)
whether to drop unused levels ofarm_var. IfTRUE,arm_varlevels are set to those used in thedatanamedataset. IfFALSE,arm_varlevels are set to those used in theparentnamedataset. Ifdatanameandparentnameare the same, thendrop_arm_levelsis set toTRUEand user input for this parameter is ignored.- pre_output
optional, (
shiny.tag)
with text placed before the output to put the output into context. For example a title.- post_output
optional, (
shiny.tag)
with text placed after the output to put the output into context. For example theshiny::helpText()elements are useful.- basic_table_args
optional, (
basic_table_args)
object created byteal.widgets::basic_table_args()with settings for the module table. The argument is merged with optionteal.basic_table_argsand with default module arguments (hard coded in the module body). For more details, see the vignette:vignette("custom-basic-table-arguments", package = "teal.widgets").
See also
The TLG Catalog where additional example apps implementing this module can be found.
Examples
ADSL <- tmc_ex_adsl
ADCM <- tmc_ex_adcm
adcm_keys <- c("STUDYID", "USUBJID", "ASTDTM", "CMSEQ", "ATC1", "ATC2", "ATC3", "ATC4")
join_keys <- default_cdisc_join_keys[c("ADSL", "ADCM")]
join_keys["ADCM", "ADCM"] <- adcm_keys
app <- init(
data = cdisc_data(
ADSL = ADSL,
ADCM = ADCM,
code = "
ADSL <- tmc_ex_adsl
ADCM <- tmc_ex_adcm
",
join_keys = join_keys
),
modules = modules(
tm_t_mult_events(
label = "Concomitant Medications by Medication Class and Preferred Name",
dataname = "ADCM",
arm_var = choices_selected(c("ARM", "ARMCD"), "ARM"),
seq_var = choices_selected("CMSEQ", selected = "CMSEQ", fixed = TRUE),
hlt = choices_selected(
choices = variable_choices(ADCM, c("ATC1", "ATC2", "ATC3", "ATC4")),
selected = c("ATC1", "ATC2", "ATC3", "ATC4")
),
llt = choices_selected(
choices = variable_choices(ADCM, c("CMDECOD")),
selected = c("CMDECOD")
),
add_total = TRUE,
event_type = "treatment"
)
)
)
#> [INFO] 2024-02-26 01:42:43.9122 pid:1518 token:[] teal.modules.clinical Initializing tm_t_mult_events
if (interactive()) {
shinyApp(app$ui, app$server)
}