Complete Clinical Study Report Tables with gtsummary |> Table Contest

Complete Clinical Study Report Tables with gtsummary

Authors: Agustin Calatroni & Daniel D. Sjoberg

Full Description:
The purpose of this project is to reproduce all tables (and figure) from the Clinical Study Report (CSR) of an open-source clinical trial using gtsummary. gtsummary is an elegant and flexible way to create publication-ready analytical and summary tables using the R programming language. Let's break down each component of the project:

1- Clinical Study Report (CSR): A CSR is a comprehensive document that summarizes the methodology and results of a clinical study. It includes critical components such as tables and figures that provide clear and structured presentations of the collected data. These elements are essential for assessing the treatment's efficacy and safety. For more details, refer to the FDA's guidance on the structure and content of clinical study reports: E3 Structure and Content of Clinical Study Reports.

2- Data Source: The data and original tables and figures are derived from the CDISCPILOT01 - Initial Case Study of the CDISC SDTM/ADaM Pilot Project. This project featured real clinical trial data from Eli Lilly and Company, which was de-identified and had documents redacted. More information and data for this project are available on GitHub: CDISC SDTM/ADaM Pilot Project.

  • Case Study Title: Safety and Efficacy of the Xanomeline Transdermal Therapeutic System (TTS) in Patients with Mild to Moderate Alzheimer’s Disease

  • Study Type: Randomized, double-blind, placebo-controlled, parallel-group

  • Treatment Arms: Low dose Xanomeline, High dose Xanomeline and Placebo

3- Literate Programming with Quarto: The project utilizes Quarto, a literate programming tool, to embed and present the analyses clearly. Literate programming allows for the integration of code, results, and documentation in a single document, enhancing transparency and reproducibility. For more information on Quarto, visit

4- gtsummary Package: gtsummary is an exceptional R package designed for the creation of concise and highly customizable tables. It focuses on summary tables and regression tables from a range of models, including linear, Cox, and mixed models. It also supports survey designs. A notable feature of gtsummary is its ability to merge and stack tables, expanding the possibilities for advanced table generation.

To test its capabilities, we used gtsummary to generate all tables for the CDISC SDTM/ADaM Pilot Project 1 Clinical Study Report. This exercise demonstrated the package's efficiency in producing the required tables, making a compelling case for its utility in FDA submission documents. Additionally, this effort highlighted a few areas where the package can be improved to address minor pain points. Importantly, many of these tables are not typically suited to the primary goals of the gtsummary package. However, by leveraging features like the ability to merge and stack tables and the support for various models, we were able to adapt gtsummary to handle these tables effectively, showcasing its flexibility and potential for advanced table generation.

The entire process is documented and can be accessed through the following links for a fully reproducible approach: GitHub & Report.

Screenshots of one of the many tables from the Clinical Study Report (refer to the Report for the complete HTML document)

Table Type: static-HTML
Submission Type: Other
Table: CDISC Pilot replication w/ gtsummary
Code: GitHub - agstn/CPR_gtsummary: CDISC Pilot replication w/ gtsummary
Language: Table built with R
Industries: Life Science (Pharma) .
Packages: gtsummary, gt

1 Like