Skip to contents

Specify how missing values are shown in the printed table. By default, a blank cell is printed for every NA.

Usage

modify_missing_symbol(x, symbol, columns, rows)

Arguments

x

(ltsummary)
An ltsummary object.

symbol

(string)
Text shown in place of missing values.

columns

(selector)
Columns of x$table_body.

rows

(predicate expression)
Expression selecting rows of x$table_body, e.g. row_type == "label". Used for footnotes, formatting functions, missing symbols, indentation and text formatting. Default is NULL, which selects every row (or, for a footnote, places it in the column header). See the section below.

Value

An ltsummary object.

rows argument

The rows argument is a predicate expression that selects the rows the styling applies to. It is evaluated in x$table_body, so its column names are available as variables, and it must give a logical vector. To style the rows of the age variable pass rows = variable == "age"; to style the variable label rows pass rows = row_type == "label". A logical vector, a vector of row numbers or a function of table_body are also accepted.

Objects from the calling environment can be used in the expression, e.g. rows = variable == vars[1], as long as they do not share a name with a column of x$table_body. The expression is stored, not its result, and resolved when the table is printed, so it survives later changes to the table such as remove_row_type().

Examples

# Example 1 ----------------------------------
# show a dash in the empty cells of the variable label rows
trial |>
  tbl_summary(by = trt, include = c(grade, stage), missing = "no") |>
  modify_missing_symbol(
    symbol = "\u2014",
    columns = all_stat_cols(),
    rows = row_type == "label"
  )