Create TLGs using the 'tidyverse'

Generate tables, listings, and graphs (TLG) using 'tidyverse'. Tables can be created functionally, using a standard TLG process, or by specifying table and column metadata to create generic analysis summaries. The 'envsetup' package can also be leveraged to create environments for table creation.


tidytlg

CRANstatus

The goal of tidytlg is to generate table, listings, and graphs (TLG) using Tidyverse. This can be achieved multiple ways with this package.

  • Functional method: build a custom script for each TLG
  • Metadata method: build a generic script that utilizes column and table metadata to produce each TLG result

Installation

Development version

# install.packages("devtools")
devtools::install_github("pharmaverse/tidytlg")

Functional method example

library(dplyr)
library(tidytlg)

# Note cdisc_adsl is built into the package for use
ittpop <- cdisc_adsl %>%
  filter(ITTFL == "Y")

# frequency of Intend-to-Treat patients by planned treatment
tbl1 <- freq(ittpop,
             rowvar = "ITTFL",
             statlist = statlist("n"),
             colvar = "TRT01P",
             rowtext = "Analysis Set:  Intend-to-Treat Population",
             subset = ITTFL == "Y")

# N, MEAN (SD), MEDIAN, RANGE, IQ Range of age by planned treatment
tbl2 <- univar(ittpop,
               rowvar = "AGE",
               colvar = "TRT01P",
               row_header = "Age (Years)")

# frequency of Race by planned treatment
tbl3 <- freq(ittpop,
             rowvar =  "RACE",
             statlist = statlist(c("N", "n (x.x%)")),
             colvar = "TRT01P",
             row_header = "Race, n(%)")

# combine results together
tbl <- bind_table(tbl1, tbl2, tbl3)

# conver to hux object -----------------------------------------------------------------
gentlg(huxme       = tbl ,
       orientation = "landscape",
       file        = "DEMO",
       title       = "Custom Method",
       footers     = "Produced with tidytlg",
       colspan     = list(c("", "", "Xanomeline", "Xanomeline")),
       colheader   = c("", "Placebo", "High", "Low"),
       wcol        = .30)

Metadata method example

library(dplyr)
library(tidytlg)

adsl <- cdisc_adsl

table_metadata <- tibble::tribble(
  ~anbr,~func,    ~df,     ~rowvar,            ~rowtext,   ~row_header,                    ~statlist,         ~subset,
  1,   "freq", "adsl",     "ITTFL", "Analysis set: itt",            NA,                statlist("n"),  "ITTFL == 'Y'",
  2, "univar", "adsl",       "AGE",                  NA, "Age (Years)",                           NA,              NA,
  3,   "freq", "adsl",      "RACE",                  NA,  "Race, n(%)", statlist(c("N", "n (x.x%)")),              NA
) %>%
  mutate(colvar  = "TRT01PN")

tbl <- generate_results(table_metadata, 
                        column_metadata_file = system.file("extdata/column_metadata.xlsx", package = "tidytlg"),
                        tbltype = "type1") 

# conver to hux object -----------------------------------------------------------------
tblid <- "Table01"

gentlg(huxme       = tbl,
       orientation = "landscape",
       file        = tblid,
       title_file = system.file("extdata/titles.xls", package = "tidytlg"),
       wcol        = .30)

Reference manual

It appears you don't have a PDF plugin for this browser. You can click here to download the reference manual.

install.packages("tidytlg")

0.12.0 by Konrad Pagacz, 6 months ago


https://pharmaverse.github.io/tidytlg/main/, https://github.com/pharmaverse/tidytlg


Report a bug at https://github.com/pharmaverse/tidytlg/issues


Browse source code at https://github.com/cran/tidytlg


Authors: Nicholas Masel [aut] , Steven Haesendonckx [aut] , Pelagia Alexandra Papadopoulou [aut] , Sheng-Wei Wang [aut] , Eli Miller [aut] , Nathan Kosiba [aut] , Aidan Ceney [aut] , Janssen R&D [cph, fnd] , David Hugh-Jones [cph] (Author of included 'huxtable' library) , Konrad Pagacz [aut, cre]


Documentation:   PDF Manual  


Apache License 2.0 license


Imports cli, dplyr, tibble, magrittr, rlang, tidyr, stats, stringr, forcats, purrr, huxtable, assertthat, glue, crayon, methods, readxl, cellranger, png, ggplot2, rstudioapi

Suggests testthat, knitr, rmarkdown, renv, shiny, kableExtra, haven, usethis, withr


Imported by junco.


See at CRAN