Arguments
- label
(
character(1)
)
menu item label of the module in the teal app.- dataname
(
character(1)
)
analysis data used in the teal module, needs to be available in the list passed to thedata
argument ofteal::init()
.- arm_var
(
choices_selected
)
object with all available choices and the pre-selected option for variable names that can be used asarm_var
. Seeteal.transform::choices_selected()
for details. Columnarm_var
in thedataname
has to be a factor.- flag_var_anl
(
teal.transform::choices_selected
)choices_selected
object with variables used to count adverse event sub-groups (e.g. Serious events, Related events, etc.)- fontsize
(
numeric(1)
ornumeric(3)
)
Defines initial possible range of font-size.fontsize
is set forteal.widgets::optionalSliderInputValMinMax()
which controls font-size in the output plot.- plot_height
(
numeric(3)
)
vector to indicate default value, minimum and maximum values.- plot_width
(
numeric(3)
)
vector to indicate default value, minimum and maximum values.
Value
the teal::module()
object.
Examples
library(nestcolor)
ADSL <- osprey::rADSL
ADAE <- osprey::rADAE
# Add additional dummy causality flags.
add_event_flags <- function(dat) {
dat <- dat %>%
dplyr::mutate(
TMPFL_SER = AESER == "Y",
TMPFL_REL = AEREL == "Y",
TMPFL_GR5 = AETOXGR == "5",
AEREL1 = (AEREL == "Y" & ACTARM == "A: Drug X"),
AEREL2 = (AEREL == "Y" & ACTARM == "B: Placebo")
)
labels <- c(
"Serious AE", "Related AE", "Grade 5 AE",
"AE related to A: Drug X", "AE related to B: Placebo"
)
cols <- c("TMPFL_SER", "TMPFL_REL", "TMPFL_GR5", "AEREL1", "AEREL2")
for (i in seq_along(labels)) {
attr(dat[[cols[i]]], "label") <- labels[i]
}
dat
}
ADAE <- ADAE %>% add_event_flags()
app <- init(
data = cdisc_data(
cdisc_dataset("ADSL", ADSL, code = "ADSL <- osprey::rADSL"),
cdisc_dataset("ADAE", ADAE,
code =
"ADAE <- osprey::rADAE
add_event_flags <- function(dat) {
dat <- dat %>%
dplyr::mutate(
TMPFL_SER = AESER == 'Y',
TMPFL_REL = AEREL == 'Y',
TMPFL_GR5 = AETOXGR == '5',
AEREL1 = (AEREL == 'Y' & ACTARM == 'A: Drug X'),
AEREL2 = (AEREL == 'Y' & ACTARM == 'B: Placebo')
)
labels <- c(
'Serious AE',
'Related AE',
'Grade 5 AE',
'AE related to A: Drug X',
'AE related to B: Placebo'
)
cols <- c('TMPFL_SER', 'TMPFL_REL', 'TMPFL_GR5', 'AEREL1', 'AEREL2')
for (i in seq_along(labels)) {
attr(dat[[cols[i]]], 'label') <- labels[i]
}
dat
}
# Generating user-defined event flags.
ADAE <- ADAE %>% add_event_flags()"
),
check = TRUE
),
modules = modules(
tm_g_ae_oview(
label = "AE Overview",
dataname = "ADAE",
arm_var = teal.transform::choices_selected(
selected = "ACTARM",
choices = c("ACTARM", "ACTARMCD")
),
flag_var_anl = teal.transform::choices_selected(
selected = "AEREL1",
choices = teal.transform::variable_choices(
ADAE,
c("TMPFL_SER", "TMPFL_REL", "TMPFL_GR5", "AEREL1", "AEREL2")
),
),
plot_height = c(600, 200, 2000)
)
)
)
#> [INFO] 2023-08-14 13:53:42.0344 pid:1120 token:[] teal.osprey Initializing tm_g_ae_oview
if (interactive()) {
shinyApp(app$ui, app$server)
}