matrix_form-VTableTree-method: Transform 'rtable' to a list of matrices which can be used...

matrix_form,VTableTree-methodR Documentation

Transform rtable to a list of matrices which can be used for outputting

Description

Although rtables are represented as a tree data structure when outputting the table to ASCII or HTML it is useful to map the rtable to an in between state with the formatted cells in a matrix form.

Usage

## S4 method for signature 'VTableTree'
matrix_form(
  obj,
  indent_rownames = FALSE,
  expand_newlines = TRUE,
  indent_size = 2
)

Arguments

obj

ANY. The object for the accessor to access or modify

indent_rownames

logical(1), if TRUE the column with the row names in the strings matrix of has indented row names (strings pre-fixed)

expand_newlines

logical(1). Should the matrix form generated expand rows whose values contain newlines into multiple 'physical' rows (as they will appear when rendered into ASCII). Defaults to TRUE

indent_size

numeric(1). Number of spaces to use per indent level. Defaults to 2

Details

The strings in the return object are defined as follows: row labels are those determined by make_row_df and cell values are determined using get_formatted_cells. (Column labels are calculated using a non-exported internal function.

Value

A list with the following elements:

strings

The content, as it should be printed, of the top-left material, column headers, row labels , and cell values of tt

spans

The column-span information for each print-string in the strings matrix

aligns

The text alignment for each print-string in the strings matrix

display

Whether each print-string in the strings matrix should be printed or not

.

row_info

the data.frame generated by make_row_df

With an additional nrow_header attribute indicating the number of pseudo "rows" the column structure defines.

Examples

library(dplyr)

iris2 <- iris %>%
  group_by(Species) %>%
  mutate(group = as.factor(rep_len(c("a", "b"), length.out = n()))) %>%
  ungroup()

lyt <- basic_table() %>%
  split_cols_by("Species") %>%
  split_cols_by("group") %>%
  analyze(c("Sepal.Length", "Petal.Width"),
          afun = list_wrap_x(summary) , format = "xx.xx")

lyt

tbl <- build_table(lyt, iris2)

matrix_form(tbl)

rtables documentation built on Aug. 30, 2023, 5:07 p.m.