Merge two columns to a value range column
The cols_merge_range() function is a specialized variant of the
cols_merge() function. It operates by taking a two columns that constitute
a range of values (col_begin and col_end) and merges them into a single
column. What results is a column containing both values separated by a long
dash (e.g., 12.0 — 20.0). The column specified in col_end is dropped from
the output table.
cols_merge_range(data, col_begin, col_end, sep = "--", autohide = TRUE)
data |
A table object that is created using the |
col_begin |
A column that contains values for the start of the range. |
col_end |
A column that contains values for the end of the range. |
sep |
The separator text that indicates the values are ranged. The
default value of |
autohide |
An option to automatically hide the column specified as
|
This function could be somewhat replicated using cols_merge(), however,
cols_merge_range() employs the following specialized operations for NA
handling:
NAs in col_begin (but not col_end) result in a display of only
NAs in col_end (but not col_begin) result in a display of only
the col_begin values only for the merged column (this is the converse of
the previous)
NAs both in col_begin and col_end result in missing values for
the merged column
Any resulting NA values in the col_begin column following the merge
operation can be easily formatted using the fmt_missing() function.
Separate calls of fmt_missing() can be used for the col_begin and
col_end columns for finer control of the replacement values.
This function is part of a set of three column-merging functions. The other
two are the general cols_merge() function and the specialized
cols_merge_uncert() function. These functions operate similarly, where the
non-target columns can be optionally hidden from the output table through the
hide_columns or autohide options.
An object of class gt_tbl.

4-9
Other Modify Columns:
cols_align(),
cols_hide(),
cols_label(),
cols_merge_uncert(),
cols_merge(),
cols_move_to_end(),
cols_move_to_start(),
cols_move(),
cols_width()
# Use `gtcars` to create a gt table,
# keeping only the `model`, `mpg_c`,
# and `mpg_h` columns; merge the mpg
# columns together as a single range
# column (which is labeled as MPG,
# in italics)
tab_1 <-
gtcars %>%
dplyr::select(model, starts_with("mpg")) %>%
dplyr::slice(1:8) %>%
gt() %>%
cols_merge_range(
col_begin = vars(mpg_c),
col_end = vars(mpg_h)
) %>%
cols_label(
mpg_c = md("*MPG*")
)Please choose more modern alternatives, such as Google Chrome or Mozilla Firefox.