This function is used to sort hierarchical tables. Options for sorting criteria are:
Descending - within each section of the hierarchy table, event rate sums are calculated for each row and rows are sorted in descending order by sum (default).
Alphanumeric - rows are ordered alphanumerically (i.e. A to Z) by label text. By default,
tbl_hierarchical()
sorts tables in alphanumeric order.
Usage
sort_hierarchical(x, ...)
# S3 method for class 'tbl_hierarchical'
sort_hierarchical(x, sort = everything() ~ "descending", ...)
# S3 method for class 'tbl_hierarchical_count'
sort_hierarchical(x, sort = everything() ~ "descending", ...)
# S3 method for class 'tbl_ard_hierarchical'
sort_hierarchical(x, sort = everything() ~ "descending", ...)
Arguments
- x
(
tbl_hierarchical
,tbl_hierarchical_count
,tbl_ard_hierarchical
)
a hierarchical gtsummary table of class'tbl_hierarchical'
,'tbl_hierarchical_count'
, or'tbl_ard_hierarchical'
.- ...
These dots are for future extensions and must be empty.
- sort
(
formula-list-selector
,string
)
a named list, a list of formulas, a single formula where the list element is a named list of functions (or the RHS of a formula), or a string specifying the types of sorting to perform at each hierarchy level. If the sort method for any variable is not specified then the method will default to"descending"
. If a single unnamed string is supplied it is applied to all hierarchy levels. For each variable, the value specified must be one of:"alphanumeric"
- at the specified hierarchy level, groups are ordered alphanumerically (i.e. A to Z) byvariable_level
text."descending"
- at the specified hierarchy level, count sums are calculated for each row and rows are sorted in descending order by sum. Ifsort
is"descending"
for a given variable andn
is included instatistic
for the variable thenn
is used to calculate row sums, otherwisep
is used. If neithern
norp
are present inx
for the variable, an error will occur.
Defaults to
everything() ~ "descending"
.
Note
When sorting a table that includes an overall column add_overall()
must be called to add the overall column
before sort_hierarchical()
is called.
Examples
theme_gtsummary_compact()
#> Setting theme "Compact"
ADAE_subset <- cards::ADAE |>
dplyr::filter(AEBODSYS %in% c("SKIN AND SUBCUTANEOUS TISSUE DISORDERS",
"EAR AND LABYRINTH DISORDERS")) |>
dplyr::filter(.by = AEBODSYS, dplyr::row_number() < 20)
tbl <-
tbl_hierarchical(
data = ADAE_subset,
variables = c(AEBODSYS, AEDECOD),
by = TRTA,
denominator = cards::ADSL,
id = USUBJID,
overall_row = TRUE
) |>
add_overall()
# Example 1 ----------------------------------------------
# Sort all variables by descending frequency (default)
sort_hierarchical(tbl)
Body System or Organ Class
Dictionary-Derived Term
Overall
N = 2541
Placebo
N = 861
Xanomeline High Dose
N = 841
Xanomeline Low Dose
N = 841
1 n (%)
# Example 2 ----------------------------------------------
# Sort all variables alphanumerically
sort_hierarchical(tbl, sort = everything() ~ "alphanumeric")
Body System or Organ Class
Dictionary-Derived Term
Overall
N = 2541
Placebo
N = 861
Xanomeline High Dose
N = 841
Xanomeline Low Dose
N = 841
1 n (%)
# Example 3 ----------------------------------------------
# Sort `AEBODSYS` alphanumerically, `AEDECOD` by descending frequency
sort_hierarchical(tbl, sort = list(AEBODSYS = "alphanumeric", AEDECOD = "descending"))
Body System or Organ Class
Dictionary-Derived Term
Overall
N = 2541
Placebo
N = 861
Xanomeline High Dose
N = 841
Xanomeline Low Dose
N = 841
1 n (%)
reset_gtsummary_theme()