Learn R Programming

table1

An R package for generating tables of descriptive statistics in HTML.

Installation

To install from CRAN:

install.packages("table1")

To install the latest development version directly from GitHub:

require(devtools)
devtools::install_github("benjaminrich/table1")

Getting Started

An introduction to the package with examples is provided in the vignette.

Example

For this example, we will use data from the Mayo Clinic trial in primary biliary cirrhosis (PBC) of the liver found in the survival package.

require(table1)
require(survival)

dat <- subset(survival::pbc, !is.na(trt))  # Exclude subjects not randomized

dat$trt     <- factor(dat$trt, levels=1:2, labels=c("D-penicillamine", "Placebo"))
dat$sex     <- factor(dat$sex, levels=c("m", "f"), labels=c("Male", "Female"))
dat$stage   <- factor(dat$stage, levels=1:4, labels=paste("Stage", 1:4))
dat$edema   <- factor(dat$edema, levels=c(0, 0.5, 1),
                      labels=c("No edema",
                               "Untreated or successfully treated",
                               "Edema despite diuretic therapy"))
dat$spiders <- as.logical(dat$spiders)
dat$hepato  <- as.logical(dat$hepato)
dat$ascites <- as.logical(dat$ascites)

label(dat$age)      <- "Age (y)"
label(dat$sex)      <- "Sex"
label(dat$stage)    <- "Histologic stage of disease"
label(dat$edema)    <- "Edema status"
label(dat$spiders)  <- "Blood vessel malformations in the skin"
label(dat$hepato)   <- "Presence of hepatomegaly or enlarged liver"
label(dat$ascites)  <- "Presence of ascites"
label(dat$platelet) <- "Platelet count (&times; 10<sup>9</sup> per liter)"
label(dat$protime)  <- "Standardised blood clotting time"
label(dat$albumin)  <- "Serum albumin (g/dL)"
label(dat$alk.phos) <- "Alkaline phosphotase (U/L)"
label(dat$ast)      <- "Aspartate aminotransferase (U/mL)"
label(dat$bili)     <- "Serum bilirubin (mg/dL)"
label(dat$chol)     <- "Serum cholesterol (mg/dL)"
label(dat$copper)   <- "Urine copper (&mu;g/day)"
label(dat$trig)     <- "Triglycerides (mg/dL)"

table1(~ age + sex + stage + edema + spiders + hepato + ascites +
         platelet + protime + albumin + alk.phos + ast + bili + chol +
         copper + trig | trt, data=dat)

Copy Link

Version

Install

install.packages('table1')

Monthly Downloads

10,714

Version

1.4.3

License

GPL-3

Issues

Pull Requests

Stars

Forks

Maintainer

Last Published

January 6th, 2023

Functions in table1 (1.4.3)

subsetp

Subset function that preserves column attributes.
t1flex

Convert a table1 object to flextable.
t1kable

Convert a table1 object to kabelExtra.
table1

Generate an HTML table of descriptive statistics.
render.varlabel

Render variable labels for table output.
signif_pad

Round numbers with 0-padding.
units

Units attribute.
update_html

Update HTML.
table.rows

Convert to HTML table rows.
t1read

Read and augment data with extended metadata attributes
stats.apply.rounding

Apply rounding to basic descriptive statistics.
render.categorical.default

Render categorical values for table output.
knit_print.table1

Method for printing in a knitr context.
render.default

Render values for table output.
render.missing.default

Render missing values for table output.
parse.abbrev.render.code

Parse abbreviated code for rendering table output.
render.strat.default

Render strata labels for table output.
label

Label attribute.
print.table1

Print table1 object.
render.continuous.default

Render continuous values for table output.
stats.default

Compute some basic descriptive statistics.
as.data.frame.table1

Convert a table1 object to a data.frame.
eqcut

Cut a continuous variable into equal-sized groups.