Learn R Programming

r2rtf

Overview

r2rtf is an R package to create production-ready tables and figures in RTF format. The package is designed with these principles:

  • Provide simple “verb” functions that correspond to each component of a table, to help you translate data frame(s) to a table in RTF file.
  • Functions are chainable with pipes (%>%).
  • Only focus on table format.
    • Data manipulation and analysis should be handled by other R packages, for example, tidyverse.
  • Minimize package dependency.

The R for clinical study reports and submission book provides tutorials by using real world examples.

Installation

You can install the package via CRAN:

install.packages("r2rtf")

Or, install from GitHub:

remotes::install_github("Merck/r2rtf")

Highlighted features

The R package r2rtf provides flexibility to enable features below:

  • Create highly customized RTF tables and figures ready for production.
  • Simple to use parameters and data structure.
    • Customized column header: split by "|".
    • Three required parameters for the output tables (data, filename, column relative width).
    • Flexible and detail control of table structure.
  • Format control in cell, row, column and table level for:
    • Border Type: single, double, dash, dot, etc.
    • Alignment: left, right, center, decimal.
    • Column width.
    • Text appearance: bold, italics, strikethrough, underline and any combinations.
    • Font size.
    • Text and border color (657 different colors named in color() function).
    • Special characters: any character in UTF-8 encoding (e.g., Greek, Symbol, Chinese, Japanese, Korean).
  • Append several tables into one file.
  • Pagination.
  • Built-in raw data for validation.

Simple example

library(dplyr)
library(r2rtf)

head(iris) %>%
  rtf_body() %>% # Step 1 Add attributes
  rtf_encode() %>% # Step 2 Convert attributes to RTF encode
  write_rtf(file = "ex-tbl.rtf") # Step 3 Write to a .rtf file

Click here to see the output

Example efficacy table

Click here to see the output

Example safety table

Click here to see the output

Citation

If you use this software, please cite it as below.

Wang, S., Ye, S., Anderson, K., & Zhang, Y. (2020). r2rtf—an R Package to Produce Rich Text Format (RTF) Tables and Figures. PharmaSUG. https://pharmasug.org/proceedings/2020/DV/PharmaSUG-2020-DV-198.pdf

A BibTeX entry for LaTeX users is

@inproceedings{wang2020r2rtf,
  title     = {{r2rtf}---an {R} Package to Produce {Rich Text Format} ({RTF}) Tables and Figures},
  author    = {Wang, Siruo and Ye, Simiao and Anderson, Keaven M and Zhang, Yilong},
  booktitle = {PharmaSUG},
  year      = {2020},
  url       = {https://pharmasug.org/proceedings/2020/DV/PharmaSUG-2020-DV-198.pdf}
}

Copy Link

Version

Install

install.packages('r2rtf')

Monthly Downloads

4,520

Version

1.1.3

License

GPL-3

Issues

Pull Requests

Stars

Forks

Maintainer

Benjamin Wang

Last Published

February 28th, 2025

Functions in r2rtf (1.1.3)

rtf_source

Add Data Source Attributes to the Table
rtf_read_figure

Read Figures into Binary Files
rtf_read_png

Read PNG Figures into Binary Files
rtf_figure

Add Figure Attributes
rtf_page_header

Add RTF Page Header Information
rtf_page

Add RTF File Page Information
rtf_title

Add Title Attributes to Table
utf8Tortf

Convert a UTF-8 Encoded Character String to a RTF Encoded String
rtf_subline

Add Subline Attributes to Table
write_rtf

Write an RTF Table or Figure to an RTF File
r2rtf_tbl2

Between Group Results from an ANCOVA Model
assemble_rtf

Assemble Multiple RTF Table Listing and Figure Into One RTF Document
assemble_docx

Assemble Multiple RTF Table Listing and Figure Into One Word Document
r2rtf_adae

An Adverse Event Dataset
r2rtf_tbl3

Root Mean Square Error from an ANCOVA model
rtf_body

Add Table Body Attributes to the Table
r2rtf_HAMD17

An Efficacy Clinical Trial Data to Evaluate a Drug to Reduce Lower Back Pain
rtf_colheader

Add Column Header Attributes to Table
rtf_page_footer

Add RTF Page Footer Information
r2rtf_adsl

A Subject Level Demographic Dataset
rtf_footnote

Add Footnote Attributes to Table
rtf_encode

Render to RTF Encoding
rtf_rich_text

Text to Formatted RTF Encode
r2rtf_tbl1

Within Group Results from an ANCOVA Model