gtsummary v1.3.6

0

Monthly downloads

0th

Percentile

Presentation-Ready Data Summary and Analytic Result Tables

Creates presentation-ready tables summarizing data sets, regression models, and more. The code to create the tables is concise and highly customizable. Data frames can be summarized with any function, e.g. mean(), median(), even user-written functions. Regression models are summarized and include the reference rows for categorical variables. Common regression models, such as logistic regression and Cox proportional hazards regression, are automatically identified and the tables are pre-filled with appropriate column headers.

Readme

Codecov test
coverage R build
status CRAN
status Lifecycle:
maturing

gtsummary

The {gtsummary} package provides an elegant and flexible way to create publication-ready analytical and summary tables using the R programming language. The {gtsummary} package summarizes data sets, regression models, and more, using sensible defaults with highly customizable capabilities.

  • Summarize data frames or tibbles easily in R. Perfect for presenting descriptive statistics, comparing group demographics (e.g creating a Table 1 for medical journals), and more. Automatically detects continuous, categorical, and dichotomous variables in your data set, calculates appropriate descriptive statistics, and also includes amount of missingness in each variable.

  • Summarize regression models in R and include reference rows for categorical variables. Common regression models, such as logistic regression and Cox proportional hazards regression, are automatically identified and the tables are pre-filled with appropriate column headers (i.e. Odds Ratio and Hazard Ratio).

  • Customize gtsummary tables using a growing list of formatting/styling functions. Bold labels, italicize levels, add p-value to summary tables, style the statistics however you choose, merge or stack tables to present results side by side… there are so many possibilities to create the table of your dreams!

  • Report statistics inline from summary tables and regression summary tables in R markdown. Make your reports completely reproducible!

By leveraging {broom}, {gt}, and {labelled} packages, {gtsummary} creates beautifully formatted, ready-to-share summary and result tables in a single line of R code!

Check out the examples below, review the vignettes for a detailed exploration of the output options, and view the gallery for various customization examples.

Installation

The {gtsummary} package was written as a companion to the {gt} package from RStudio. You can install {gtsummary} with the following code.

install.packages("gtsummary")

Install the development version of {gtsummary} with:

remotes::install_github("ddsjoberg/gtsummary")

Examples

Summary Table

Use tbl_summary() to summarize a data frame.

animated

Example basic table:

library(gtsummary)
# make dataset with a few variables to summarize
trial2 <- trial %>% select(age, grade, response, trt)

# summarize the data with our package
table1 <- tbl_summary(trial2)

There are many customization options to add information (like comparing groups) and format results (like bold labels) in your table. See the tbl_summary() tutorial for many more options, or below for one example.

table2 <- 
  tbl_summary(
    trial2,
    by = trt, # split table by group
    missing = "no" # don't list missing data separately
  ) %>%
  add_n() %>% # add column with total number of non-missing observations
  add_p() %>% # test for a difference between groups
  modify_header(label = "**Variable**") %>% # update the column header
  bold_labels()

Regression Models

Use tbl_regression() to easily and beautifully display regression model results in a table. See the tutorial for customization options.

mod1 <- glm(response ~ trt + age + grade, trial, family = binomial)

t1 <- tbl_regression(mod1, exponentiate = TRUE)

Side-by-side Regression Models

You can also present side-by-side regression model results using tbl_merge()

library(survival)
#> Warning: package 'survival' was built under R version 4.0.3

# build survival model table
t2 <-
  coxph(Surv(ttdeath, death) ~ trt + grade + age, trial) %>%
  tbl_regression(exponentiate = TRUE)

# merge tables 
tbl_merge_ex1 <-
  tbl_merge(
    tbls = list(t1, t2),
    tab_spanner = c("**Tumor Response**", "**Time to Death**")
  )

Review even more output options in the table gallery.

gtsummary + R Markdown

The {gtsummary} package was written to be a companion to the {gt} package from RStudio. But not all output types are supported by the {gt} package. Therefore, we have made it possible to print {gtsummary} tables with various engines.

Review the gtsummary + R Markdown vignette for details.

Contributing

Please note that the {gtsummary} project is released with a Contributor Code of Conduct. By contributing to this project, you agree to abide by its terms. A big thank you to all contributors!
@ablack3, @aghaynes, @ahinton-mmc, @alexis-catherine, @anaavu, @angelgar, @asshah4, @barthelmes, @benediktclaus, @calebasaraba, @CarolineXGao, @CodieMonster, @ctlamb, @davidgohel, @davidkane9, @dax44, @ddsjoberg, @DeFilippis, @denis-or, @djbirke, @emilyvertosick, @gorkang, @GuiMarthe, @hughjonesd, @IsadoraBM, @j-tamad, @jalavery, @jeanmanguy, @jemus42, @jennybc, @JeremyPasco, @JesseRop, @jflynn264, @jjallaire, @joelgautschi, @juseer, @jwilliman, @karissawhiting, @khizzr, @kmdono02, @larmarange, @leejasme, @ltin1214, @margarethannum, @Marsus1972, @matthieu-faron, @mbac, @MelissaAssel, @michaelcurry1123, @moleps, @MyKo101, @oranwutang, @Pascal-Schmidt, @proshano, @ryzhu75, @sammo3182, @sbalci, @simonpcouch, @slb2240, @slobaugh, @storopoli, @tjmeyers, @tormodb, @UAB-BST-680, @Uriahf, @zabore, and @zeyunlu

Functions in gtsummary

Name Description
add_difference Add difference between groups
add_nevent.tbl_survfit Add column with number of observed events
add_nevent Add number of events to a regression table
add_n.tbl_survfit Add column with number of observations
add_n.tbl_summary Add column with N
add_nevent.tbl_regression Add number of events to a regression table
add_nevent.tbl_uvregression Add number of events to a regression table
add_glance_source_note Add glance statistics
add_n Adds column with N to gtsummary table
add_global_p Add the global p-values
add_stat_label Add statistic labels
add_overall Add column with overall summary statistics
add_p Adds p-values to gtsummary table
as_kable Convert gtsummary object to a kable object
custom_tidiers Collection of custom tidiers
as_flex_table Convert gtsummary object to a flextable object
deprecated Deprecated functions
add_stat Add a custom statistic column
bold_italicize_labels_levels Bold or Italicize labels or levels in gtsummary tables
add_q Add a column of q-values to account for multiple comparisons
as_tibble.gtsummary Convert gtsummary object to a tibble
modify Modify column headers, footnotes, spanning headers, and table captions
reexports Objects exported from other packages
print_gtsummary print and knit_print methods for gtsummary objects
add_p.tbl_svysummary Adds p-values to svysummary tables
add_p.tbl_survfit Adds p-value to survfit table
bold_p Bold significant p-values or q-values
combine_terms Combine terms in a regression model
inline_text.tbl_regression Report statistics from regression summary tables inline
inline_text.tbl_cross Report statistics from cross table inline
inline_text.tbl_survival Report statistics from survival summary tables inline
inline_text.tbl_uvregression Report statistics from regression summary tables inline
add_p.tbl_summary Adds p-values to summary tables
inline_text Report statistics from gtsummary tables inline
as_hux_table Convert gtsummary object to a huxtable object
add_p.tbl_cross Adds p-value to crosstab table
as_gt Convert gtsummary object to a gt object
gtsummary-package gtsummary: Presentation-Ready Data Summary and Analytic Result Tables
modify_column_hide Modify Hidden Columns
tbl_summary Create a table of summary statistics
remove_row_type Remove rows by type
select_helpers Select helper functions
as_kable_extra Convert gtsummary object to a kableExtra object
tbl_stack Stacks two or more gtsummary objects
tbl_regression_methods Methods for tbl_regression
inline_text.tbl_summary Report statistics from summary tables inline
inline_text.tbl_survfit Report statistics from survfit tables inline
modify_table_body Modify table_body
tbl_survfit Creates table of survival probabilities
tbl_survival.survfit Creates table of survival probabilities
tbl_survival Creates table of univariate summary statistics for time-to-event endpoints
tbl_regression Display regression model results in table
tbl_merge Merge two or more gtsummary objects
style_number Style numbers
style_percent Style percentages
modify_table_header Modify table_header
style_ratio Style significant figure-like rounding for ratios
tbl_uvregression Display univariate regression model results in table
tbl_svysummary Create a table of summary statistics from a survey object
style_pvalue Style p-values
trial Results from a simulated study of two chemotherapy agents
vetted_models Vetted tidy models
style_sigfig Style significant figure-like rounding
tbl_cross Create a cross table of summary statistics
set_gtsummary_theme Set a gtsummary theme
tests Tests/methods available in add_p() and add_difference()
sort_filter_p Sort and filter variables in table by p-values
theme_gtsummary Available gtsummary themes
No Results!

Vignettes of gtsummary

Name
img/icons8-confused-100.png
img/icons8-disappointed-100.png
img/icons8-neutral-100.png
img/icons8-no-entry-100.png
img/icons8-smiling-100.png
img/icons8-under-construction-100.png
gallery.Rmd
global_options.Rmd
gtsummary_definition.Rmd
inline_text.Rmd
rmarkdown.Rmd
tbl_regression.Rmd
tbl_summary.Rmd
themes.Rmd
No Results!

Last month downloads

Details

Include our badge in your README

[![Rdoc](http://www.rdocumentation.org/badges/version/gtsummary)](http://www.rdocumentation.org/packages/gtsummary)