Summary Tables with ‘tab’

Dane Van Domelen
[email protected]



You can install and load tab from GitHub via the following code:



The main purpose of tab is to create neatly formatted summary tables for papers and presentations. The following functions are included:

Regression summaries with just 2 extra keystrokes

To summarize a fitted generalized linear model, simply call glm_v as you would glm. The result will be a formatted summary table printed to the RStudio Viewer. Here’s an example for logistic regression:

  death_1yr ~ poly(Age, 2, raw = TRUE) + Sex * BMI, 
  data = tabdata, 
  family = binomial

From here, you can “snip” the summary table and save it as a figure (as I did for this README) or copy directly from the Viewer and paste outside of R.

For more flexibility, see tabglm. That function lets you control things like what columns to present, how categorical predictors are presented, and so on.

Summary tables for continuous and categorical variables

You can use tabmulti to summarize variables across two or more groups, using a formula interface. Here’s an example:

tabmulti(Age + Sex + Race + BMI ~ Group, data = tabdata)

Compatibility with Markdown/Knitr

The functions all return kable objects, so they should work perfectly well in R Markdown and knitr documents.


Xie, Yihui. 2014. “Knitr: A Comprehensive Tool for Reproducible Research in R.” In Implementing Reproducible Computational Research, edited by Victoria Stodden, Friedrich Leisch, and Roger D. Peng. Chapman; Hall/CRC.

———. 2015. Dynamic Documents with R and Knitr. 2nd ed. Chapman; Hall/CRC.

———. 2021. Knitr: A General-Purpose Package for Dynamic Report Generation in R.