NEWS.md
table2()
: the core function of rifttable
table1()
: see rifttable::table1_design()
scoreci()
, survdiff_ci()
, rates()
: now internal functions available via rifttablemytab()
: use khsmisc::tabulate_rowcol()
mygt()
is deprecated in favor of rifttable::rt_gt()
forcats::fct_na_value_to_level()
in {forcats} >= 1.0.0make_exclusions()
criteriacorrmat()
font size more customizabletable1()
and table2()
have been superseded by the more flexible and more lightweight {rifttable} package. They will remain available in this package for the near future as underlying packages permit.table2()
compatible with {dplyr} 1.1.0 (input type checks)github_document
: mygt()
and table1()
now export directly to markdown, using knitr::kable()
, eliminating the extraneous inline CSS. The tab_style()
and tab_footnote()
functions are wrappers that also accept on kable tables.here()
, knit to github_document
by default.brickchart()
: add clip
and flip
optionstable2()
: also pass confounders
, trend
to custom functionstable2()
: add option to suppress estimates if per-cell count lower than the design
option nmin
brickchart()
: make proportion and counts per group available for labelingtable1()
: display one or more unstratified datasetstable1()
:
table2()
:
type = "irrrob"
, Poisson models with robust standard errors for ratios of continuous outcomestype
and type2
make_exclusions()
: return a list of observations filtered out (excluded
)brickchart()
: do not drop by
or group
categories without eventstable2()
table1()
and table2() %>% mygt()
: Remove horizontal border lines at the top of indented lines (parameter remove_border
).mygt()
:
output: github_document
.table2()
:
mygt()
as an attribute instead of HTML.logical
effect modifiers, missing per-stratum estimates, and rounding of type = "time"
and "events/time"
.type = "range"
(min-max).brickchart()
: make compatible (without legend) with ggplot >= 3.3.4; make facets customizable.roundp()
: format p as > 0.99
instead of 1.00
.make_exclusions()
: New function for sequential exclusions to derive an analytical data set and prepare a flow chart for exclusion_flowchart()
.estimate_rmtl()
: New function, reshaping code by Conner and Trinquart, that estimates restricted mean time lost, handling competing risks and weighting.survdiff_ci()
: New function for differences in x-year survival/cumulative incidence.table2()
:
design
matrix, digits for rounding can no longer be provided as part of type
. Use separate column digits
if needed.exposure
variable, as well as showing overall and stratified estimates in one table.table2(custom = list(fun_a, fun_b)))
that can be called via, e.g., type = "custom1"
.type
options: medsurv
median survival, medfu
/maxfu
median/maximum follow-up, surv
/cuminc
survival and cumulative incidence from Kaplan-Meier, rmtl
restricted mean time lost, rmtdiff
/survdiff
/cumincdiff
difference in RMTL/survival/cumulative incidence, mean (sd)
/sd
mean and standard deviation.--
.risk_digits
for rounding of risk/cumulative incidence.type = "median (iqr)"
: do not remove missing values, like elsewhere.man/figures/
.table1()
:
type
parameter, passed along to gtsummary::tbl_summary()
.table2()
:
type2
column to the design
matrix to allow adding a second estimate per cell.prepare_md
parameter and example for how to obtain a markdown-formatted label
column (e.g., **bold**
for a bold label).mygt()
: add md
option to get markdown formatting on selected columns through gt::fmt_markdown(columns = md)
table2()
:
trend
to the design
matrix to allow for estimating linear slopes for a continuously-coded exposure.type = "irr"
as an RR model with approach “i”.brickchart()
: Auto-generate color palette for an unlimited number of exposure categories. Expand examples.DESCRIPTION
: Add Suggests: markdown
to fix github-actions.table2()
: For risk ratios and risk differences, allow passing on model fitting approach and number of bootstrap repeats.ovarian
dataset was removed from the survival package; use (lung) cancer
instead.table2()
:
outcome
variable for type %in% c("fold", "or")
.type = "cases/controls"
.type = "foldlog"
for models of geometric means.type = "quantreg"
for differences from quantile regression.brickchart()
: New function for “brick charts”–proportions by category, where “bricks” display individual observations.table2()
: Fix exposure category order if starting table with "blank"
row.khsmisc_rmarkdown_template
: custom RMarkdown templatesaveRDS_safely()
: equivalent to save_safely()
for single objects and .rds
filesgeom_stepribbon()
: ggplot aesthetic to highlight the difference between two Kaplan-Meier curves, corresponding to the difference in RMSTDepends:
. Instead, provide the khsverse package as an alternative package loader if desired. Remove readxl and magrittr dependencies altogether.DESCRIPTION
: Add Remotes:
to install risks package from Github
table2()
: Add left-truncated survival models, using time
and time2
elements in the design
matrix.path =
argument of write_csv_safely()
to file =
, as in save_safely()
and pdf_savely()
.table2()
:
type = "or"
for logistic models.digits_...
.table2()
.table2()
:
diff_digits
, ratio_digits
, and rate_digits
are global parameters of table2()
that can be overridden using type = "(estimand) (digits)"
in each line.exclusion_flowchart()
: visualize exclusions from study with a flowchart via DiagrammeR::grViz()
.table2()
:
exposure
to be a factor and issue a warning, but do not abort.type = "diff"
and type = "mean"
.table1()
, table2()
, tsummary()
: improve input error handlingtable2()
: allow grouping multiple strata of the effect modifier; add type = "outcomes (risk)"
table2()
: include estimates from risk ratio and risk difference models; input checks; allow for missing effect modifier, confounders; more descriptive statistics; more examples.scoreci()
: new function for Wilson score confidence intervals for proportions.tabulate_rowcol()
: replacement for mytab()
(which remains available); it supports tidy evaluation.corrmat()
, tsummary()
, and table1()
still use all variables in a dataset if none are selected but can now take variable names as an argument.corrmat()
argument missing
renamed to use
to be consistent with the underlying stats::cor()
.rates()
: new parameters risk_time
to specify the time point at which cumulative incidence should be calculated, and by
for stratification variables. If a dataset has already been grouped using dplyr::group_by()
, grouping will be retained.