## ----setup, include = FALSE--------------------------------------------------- knitr::opts_chunk$set(collapse = TRUE, comment = "#>", eval = TRUE) ## ----load--------------------------------------------------------------------- library(gtstats) ## ----data--------------------------------------------------------------------- dat <- data.frame( arm = factor(c("Control", "Control", "Treatment", "Treatment", "Treatment")), age = c(45, NA, 51, 62, 57), smoker = factor(c("No", "Yes", NA, "Yes", "No")), follow_up = c(12, 10, 8, NA, 11) ) to_flextable(describe_data(dat)) ## ----descriptive-------------------------------------------------------------- summary_table( dat, by = arm, include = smoker, percent = "column", missing = "ifany" ) |> to_flextable() to_flextable(summary_table(dat, by = arm, include = smoker, percent = "row")) to_flextable(summary_table(dat, by = arm, include = smoker, percent = "overall")) to_flextable(summary_table(dat, by = arm, include = smoker, categorical = "n")) ## ----missing-as-category------------------------------------------------------ catheter_data <- data.frame( catheter = factor( c(rep("Yes", 32), rep(NA_character_, 68)), levels = c("No", "Yes") ) ) summary_table( catheter_data, include = catheter, missing = "as_category" ) |> to_flextable() ## ----proportion--------------------------------------------------------------- smoking <- proportion_stats(dat, smoker, by = arm, level = "Yes") to_flextable(smoking) denominators_stats(smoking) ## ----rate--------------------------------------------------------------------- rate_dat <- data.frame( arm = c("Control", "Control", "Treatment", "Treatment"), events = c(1, 0, 2, 1), person_years = c(1.2, NA, 0.8, 1.0) ) rate <- rate_stats(rate_dat, event = events, time = person_years, by = arm) denominators_stats(rate) ## ----crosstab----------------------------------------------------------------- cross <- crosstabs(dat, row = arm, col = smoker) denominators_stats(cross) ## ----comparison--------------------------------------------------------------- comparison <- compare_groups(dat, variable = age, group = arm) denominators_stats(comparison) ## ----correlation-------------------------------------------------------------- cor_dat <- data.frame( age = c(34, 41, 45, 49, 53, 57, 62, 68), follow_up = c(12, 11, NA, 9, 8, 7, 6, 5) ) to_flextable(correlation(cor_dat, x = age, y = follow_up)) ## ----distribution------------------------------------------------------------- dist_dat <- data.frame( arm = factor(rep(c("Control", "Treatment"), each = 8)), age = c(34, 39, 44, 48, 52, 57, NA, 63, 36, 41, 46, 51, 56, 61, 66, Inf) ) to_flextable(assess_distribution(dist_dat, vars = age, by = arm)) ## ----variance----------------------------------------------------------------- to_flextable(assess_variance(dist_dat, vars = age, by = arm))