cells_stub() is used to target the table's stub cells and it
is useful when applying a footnote with tab_footnote() or adding a custom
style with tab_style(). The function is expressly used in each of those
functions' locations argument. Here are several ways that a stub location
might be available in a gt table: (1) through specification of a
rowname_col in gt(), (2) by introducing a data frame with row names to
gt() with rownames_to_stub = TRUE, or (3) by using summary_rows() or
grand_summary_rows() with neither of the previous two conditions being
true.
cells_stub(rows = everything())A list object with the classes cells_stub and location_cells.
Rows to target
<row-targeting expression> // default: everything()
The rows to which targeting operations are constrained. The default
everything() results in all rows in columns being formatted.
Alternatively, we can supply a vector of row IDs within c(), a vector of
row indices, or a select helper function (e.g. starts_with(),
ends_with(), contains(), matches(), num_range(), and
everything()). We can also use expressions to filter down to the rows we
need (e.g., [colname_1] > 100 & [colname_2] < 50).
Using a transformed version of the sza dataset, let's create a gt
table. Color all of the month values in the table stub with tab_style(),
using cells_stub() in locations.
sza |>
dplyr::filter(latitude == 20 & tst <= "1000") |>
dplyr::select(-latitude) |>
dplyr::filter(!is.na(sza)) |>
tidyr::spread(key = "tst", value = sza) |>
gt(rowname_col = "month") |>
sub_missing(missing_text = "") |>
tab_style(
style = list(
cell_fill(color = "darkblue"),
cell_text(color = "white")
),
locations = cells_stub()
)

8-17
v0.2.0.5 (March 31, 2020)
Other location helper functions:
cells_body(),
cells_column_labels(),
cells_column_spanners(),
cells_footnotes(),
cells_grand_summary(),
cells_row_groups(),
cells_source_notes(),
cells_stub_grand_summary(),
cells_stub_summary(),
cells_stubhead(),
cells_summary(),
cells_title(),
location-helper