
Last chance! 50% off unlimited learning
Sale ends in
Add Combination Levels to split
select_all_levelsadd_combo_levels(combosdf, trim = FALSE, first = FALSE, keep_levels = NULL)
a closure suitable for use as a splitting function (splfun
)
when creating a table layout
An object of class AllLevelsSentinel
of length 0.
data.frame/tbl_df. Columns valname, label, levelcombo,
exargs. Of which levelcombo and exargs are list columns. Passing the
select_all_levels
object as a value in the comblevels
column
indicates that an overall/all-observations level should be created.
logical(1). Should splits corresponding with 0 observations be kept when tabulating.
logical(1). Should the created split level be placed first in
the levels (TRUE
) or last (FALSE
, the default).
character or NULL. If non-NULL, the levels to retain across both combination and individual levels.
library(tibble)
combodf <- tribble(
~valname, ~label, ~levelcombo, ~exargs,
"A_B", "Arms A+B", c("A: Drug X", "B: Placebo"), list(),
"A_C", "Arms A+C", c("A: Drug X", "C: Combination"), list())
lyt <- basic_table(show_colcounts = TRUE) %>%
split_cols_by("ARM", split_fun = add_combo_levels(combodf)) %>%
analyze("AGE")
tbl <- build_table(lyt, DM)
tbl
lyt1 <- basic_table(show_colcounts = TRUE) %>%
split_cols_by("ARM",
split_fun = add_combo_levels(combodf,
keep_levels = c("A_B",
"A_C"))) %>%
analyze("AGE")
tbl1 <- build_table(lyt1, DM)
tbl1
smallerDM <- droplevels(subset(DM, SEX %in% c("M", "F") &
grepl("^(A|B)", ARM)))
lyt2 <- basic_table(show_colcounts = TRUE) %>%
split_cols_by("ARM", split_fun = add_combo_levels(combodf[1,])) %>%
split_cols_by("SEX",
split_fun = add_overall_level("SEX_ALL", "All Genders")) %>%
analyze("AGE")
lyt3 <- basic_table(show_colcounts = TRUE) %>%
split_cols_by("ARM", split_fun = add_combo_levels(combodf)) %>%
split_rows_by("SEX",
split_fun = add_overall_level("SEX_ALL", "All Genders")) %>%
summarize_row_groups() %>%
analyze("AGE")
tbl3 <- build_table(lyt3, smallerDM)
tbl3
Run the code above in your browser using DataLab