VPSPulse Mirrors

High-Performance Open-Source Archive

Constructing rtables Manually

Constructing rtables Manually

Adrian Waddell

2026-04-22

Overview

The main functions currently associated with rtables are

Tables in rtables can be constructed via the layout or rtabulate tabulation frameworks or also manually. Currently manual table construction is the only way to define column spans. The main functions for manual table constructions are:

Simple Example

library(rtables)
tbl <- rtable(
  header = c("Treatement\nN=100", "Comparison\nN=300"),
  format = "xx (xx.xx%)",
  rrow("A", c(104, .2), c(100, .4)),
  rrow("B", c(23, .4), c(43, .5)),
  rrow(),
  rrow("this is a very long section header"),
  rrow("estimate", rcell(55.23, "xx.xx", colspan = 2)),
  rrow("95% CI", indent = 1, rcell(c(44.8, 67.4), format = "(xx.x, xx.x)", colspan = 2))
)

Before we go into explaining the individual components used to create this table we continue with the html conversion of the rtable() object:

as_html(tbl, width = "80%")

Treatement Comparison
N=100 N=300
A 104 (20.00%) 100 (40.00%)
B 23 (40.00%) 43 (50.00%)
this is a very long section header
estimate 55.23
95% CI (44.8, 67.4)

Next, the [ operator lets you access the cell content.

tbl[1, 1]
#      Treatement 
#        N=100    
# ————————————————
# A   104 (20.00%)

and to format that cell run format_rcell(tbl[1,1])=.

Note that tbl[6, 1] and tbl[6, 2] display both the same rcell because of the colspan.

Need mirroring services?
Contact our team at info@vpspulse.com.

Mirror powered by VPSpulse

Infrastructure sponsored by VPSPulse & Secure Payments by ArionPay.