Substitute large values in the table bodySource:
Wherever there is numerical data that are very large in value, replacement
text may be better for explanatory purposes. The
allows for this replacement through specification of a
large_pattern, and the sign of the values to be considered.
A table object that is created using the
The columns to format. Can either be a series of column names provided in
c(), a vector of column indices, or a helper function focused on selections. The select helper functions are:
Optional rows to format. Providing
everything()(the default) results in all rows in
columnsbeing formatted. Alternatively, we can supply a vector of row captions within
c(), a vector of row indices, or a helper function focused on selections. The select helper functions are:
everything(). We can also use expressions to filter down to the rows we need (e.g.,
[colname_1] > 100 & [colname_2] < 50).
The threshold value with which values should be considered large enough for replacement.
The pattern text to be used in place of the suitably large values in the rendered table.
The sign of the numbers to be considered in the replacement. By default, we only consider positive values (
"+"). The other option (
"-") can be used to consider only negative values.
Targeting of values is done through
columns and additionally by
nothing is provided for
rows then entire columns are selected). Conditional
formatting is possible by providing a conditional expression to the
argument. See the Arguments section for more information on this.
Let's generate a simple, single-column tibble that contains an assortment of values that could potentially undergo some substitution.
tbl contains a variety of smaller numbers and some might be small
enough to reformat with a threshold value. With
sub_small_vals() we can
do just that:
Large negative values can also be handled but they are handled specially
sign parameter. Setting that to
"-" will format only the large
values that are negative. Notice that with the default
">=" is automatically changed to
tbl %>% dplyr::mutate(num = -num) %>% gt() %>% fmt_number(columns = num) %>% sub_large_vals(sign = "-")
You don't have to settle with the default
threshold value or the default
replacement pattern (in
large_pattern). This can be changed and the
large_pattern (which uses the
threshold value) can even be
tbl %>% gt() %>% fmt_number(columns = num) %>% sub_large_vals( threshold = 5E10, large_pattern = "hugemongous" )
Other Format Data: