This module produces a grid-style Kaplan-Meier plot for data with ADaM structure.
tm_g_km(
label,
dataname,
parentname = ifelse(inherits(arm_var, "data_extract_spec"),
teal.transform::datanames_input(arm_var), "ADSL"),
arm_var,
arm_ref_comp = NULL,
paramcd,
strata_var,
facet_var,
time_unit_var =
teal.transform::choices_selected(teal.transform::variable_choices(dataname, "AVALU"),
"AVALU", fixed = TRUE),
aval_var = teal.transform::choices_selected(teal.transform::variable_choices(dataname,
"AVAL"), "AVAL", fixed = TRUE),
cnsr_var = teal.transform::choices_selected(teal.transform::variable_choices(dataname,
"CNSR"), "CNSR", fixed = TRUE),
conf_level = teal.transform::choices_selected(c(0.95, 0.9, 0.8), 0.95, keep_order =
TRUE),
plot_height = c(1200L, 400L, 5000L),
plot_width = NULL,
pre_output = NULL,
post_output = NULL
)
a teal_module
object.
(character
)
menu item label of the module in the teal app.
(character
)
analysis data used in teal module.
(character
)
parent analysis data used in teal module, usually this refers to ADSL
.
(teal.transform::choices_selected()
)
object with all
available choices and preselected option for variable names that can be used as arm_var
.
It defines the grouping variable(s) in the results table.
If there are two elements selected for arm_var
,
second variable will be nested under the first variable.
optional, (list
)
If specified it must be a named list with each element corresponding to
an arm variable in ADSL
and the element must be another list (possibly
with delayed teal.transform::variable_choices()
or delayed teal.transform::value_choices()
with the elements named ref
and comp
that the defined the default
reference and comparison arms when the arm variable is changed.
(teal.transform::choices_selected()
)
object with all
available choices and preselected option for the parameter code variable from dataname
.
(teal.transform::choices_selected()
)
names of
the variables for stratified analysis.
(teal.transform::choices_selected()
)
object with
all available choices and preselected option for names of variable that can be used for plot faceting.
(teal.transform::choices_selected()
)
object
with all available choices and pre-selected option for the time unit variable.
(teal.transform::choices_selected()
)
object with
all available choices and pre-selected option for the analysis variable.
(teal.transform::choices_selected()
)
object with all
available choices and preselected option for the censoring variable.
(teal.transform::choices_selected()
)
object with
all available choices and pre-selected option for the confidence level, each within range of (0, 1).
optional, (numeric
)
a vector of length three with c(value, min, max)
. Specifies the
height of the main plot and renders a slider on the plot to interactively adjust the plot height.
optional, (numeric
)
a vector of length three with c(value, min, max)
. Specifies the width
of the main plot and renders a slider on the plot to interactively adjust the plot width.
optional, (shiny.tag
)
with text placed before the output to put the output into context.
For example a title.
optional, (shiny.tag
)
with text placed after the output to put the output into context.
For example the shiny::helpText()
elements are useful.
The TLG Catalog where additional example apps implementing this module can be found.
library(nestcolor)
ADSL <- tmc_ex_adsl
ADTTE <- tmc_ex_adtte
arm_ref_comp <- list(
ACTARMCD = list(
ref = "ARM B",
comp = c("ARM A", "ARM C")
),
ARM = list(
ref = "B: Placebo",
comp = c("A: Drug X", "C: Combination")
)
)
app <- init(
data = cdisc_data(
ADSL = ADSL,
ADTTE = ADTTE,
code = "
ADSL <- tmc_ex_adsl
ADTTE <- tmc_ex_adtte
"
),
modules = modules(
tm_g_km(
label = "Kaplan-Meier Plot",
dataname = "ADTTE",
arm_var = choices_selected(
variable_choices(ADSL, c("ARM", "ARMCD", "ACTARMCD")),
"ARM"
),
paramcd = choices_selected(
value_choices(ADTTE, "PARAMCD", "PARAM"),
"OS"
),
arm_ref_comp = arm_ref_comp,
strata_var = choices_selected(
variable_choices(ADSL, c("SEX", "BMRKR2")),
"SEX"
),
facet_var = choices_selected(
variable_choices(ADSL, c("SEX", "BMRKR2")),
NULL
)
)
)
)
if (interactive()) {
shinyApp(app$ui, app$server)
}
Run the code above in your browser using DataLab