library(nestcolor)
library(dplyr)
data <- teal_data()
data <- within(data, {
ADAE <- tmc_ex_adae
ADSL <- tmc_ex_adsl %>%
filter(USUBJID %in% ADAE$USUBJID)
ADCM <- tmc_ex_adcm %>%
mutate(
CMSTDY = case_when(
CMCAT == "medcl B" ~ 20,
CMCAT == "medcl C" ~ 150,
TRUE ~ 1
) %>% with_label("Study Day of Start of Medication"),
CMENDY = case_when(
CMCAT == "medcl B" ~ 700,
CMCAT == "medcl C" ~ 1000,
TRUE ~ 500
) %>% with_label("Study Day of End of Medication"),
CMASTDTM = ASTDTM,
CMAENDTM = AENDTM
)
})
join_keys(data) <- default_cdisc_join_keys[c("ADSL", "ADAE", "ADCM")]
adcm_keys <- c("STUDYID", "USUBJID", "ASTDTM", "CMSEQ", "ATC1", "ATC2", "ATC3", "ATC4")
join_keys(data)["ADCM", "ADCM"] <- adcm_keys
join_keys(data)["ADAE", "ADCM"] <- c("STUDYID", "USUBJID")
app <- init(
data = data,
modules = modules(
tm_g_pp_patient_timeline(
label = "Patient Timeline",
dataname_adae = "ADAE",
dataname_adcm = "ADCM",
parentname = "ADSL",
patient_col = "USUBJID",
plot_height = c(600L, 200L, 2000L),
cmdecod = choices_selected(
choices = variable_choices(data[["ADCM"]], "CMDECOD"),
selected = "CMDECOD",
),
aeterm = choices_selected(
choices = variable_choices(data[["ADAE"]], "AETERM"),
selected = c("AETERM")
),
aetime_start = choices_selected(
choices = variable_choices(data[["ADAE"]], "ASTDTM"),
selected = c("ASTDTM")
),
aetime_end = choices_selected(
choices = variable_choices(data[["ADAE"]], "AENDTM"),
selected = c("AENDTM")
),
dstime_start = choices_selected(
choices = variable_choices(data[["ADCM"]], "CMASTDTM"),
selected = c("CMASTDTM")
),
dstime_end = choices_selected(
choices = variable_choices(data[["ADCM"]], "CMAENDTM"),
selected = c("CMAENDTM")
),
aerelday_start = choices_selected(
choices = variable_choices(data[["ADAE"]], "ASTDY"),
selected = c("ASTDY")
),
aerelday_end = choices_selected(
choices = variable_choices(data[["ADAE"]], "AENDY"),
selected = c("AENDY")
),
dsrelday_start = choices_selected(
choices = variable_choices(data[["ADCM"]], "ASTDY"),
selected = c("ASTDY")
),
dsrelday_end = choices_selected(
choices = variable_choices(data[["ADCM"]], "AENDY"),
selected = c("AENDY")
)
)
)
)
if (interactive()) {
shinyApp(app$ui, app$server)
}
Run the code above in your browser using DataLab