Get a vector of cell data from a gt_tbl
object. The output vector will have
cell data formatted in the same way as the table.
extract_cells(
data,
columns,
rows = everything(),
output = c("auto", "plain", "html", "latex", "rtf", "word", "grid")
)
A vector of cell data extracted from a gt table.
The gt table data object
obj:<gt_tbl>
// required
This is the gt table object that is commonly created through use of the
gt()
function.
Columns to target
<column-targeting expression>
// default: everything()
Can either be a series of column names provided in c()
, a vector of
column indices, or a select helper function (e.g. starts_with()
,
ends_with()
, contains()
, matches()
, num_range()
and everything()
).
Rows to target
<row-targeting expression>
// default: everything()
In conjunction with columns
, we can specify which of their rows should
form a constraint for extraction. 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
).
Output format
singl-kw:[auto|plain|html|latex|rtf|word]
// default: "auto"
The output style of the resulting character vector. This can either be
"auto"
(the default), "plain"
, "html"
, "latex"
, "rtf"
, or
"word"
. In knitr rendering (i.e., Quarto or R Markdown), the "auto"
option will choose the correct output
value
Let's create a gt table with the exibble
dataset to use in the next
few examples:
gt_tbl <- gt(exibble, rowname_col = "row", groupname_col = "group")
We can extract a cell from the table with the extract_cells()
function.
This is done by providing a column and a row intersection:
extract_cells(gt_tbl, columns = num, row = 1)
#> [1] "1.111e-01"
Multiple cells can be extracted. Let's get the first four cells from the
char
column.
extract_cells(gt_tbl, columns = char, rows = 1:4)
#> [1] "apricot" "banana" "coconut" "durian"
We can format cells and expect that the formatting is fully retained after extraction.
gt_tbl |>
fmt_number(columns = num, decimals = 2) |>
extract_cells(columns = num, rows = 1)
#> [1] "0.11"
13-9
v0.8.0
(November 16, 2022)
Other table export functions:
as_gtable()
,
as_latex()
,
as_raw_html()
,
as_rtf()
,
as_word()
,
extract_body()
,
extract_summary()
,
gtsave()