NEWS
rifttable 0.7.2 (2026-01-18)
- Bug fixes:
survdiff_ci() now uses the conf.level argument correctly in confidence
interval estimation using the MOVER approach (#8).
- Internal:
- Anticipate changes in {dplyr} 1.2.0 in label handling in unit tests (thanks
to @DavisVaughan, #10).
rifttable 0.7.1 (2025-06-06)
- Housekeeping for CRAN release
rifttable 0.7.0
- Breaking changes:
- Require base R pipe
|> and thus R >= 4.1.
- Make the
id variable identifying clustered observations within the same
individual a global rifttable() option for the entire data set, not only
for specific estimators.
- New functionality:
- Expand input checks to missing values in time/event variables, to missing
effect modifiers for joint models and their levels, to nonexistent custom
estimators, and to empty input data sets.
- Add
type = "sum" estimator.
- Internal and bug fixes:
- Cover entire package by unit tests.
- Return exposure consistently as a
character.
- Let the
design accept weight in addition to weights.
- Require {risks} >= 0.4.3.
- Use modern tidyselect, anonymous functions, and code style.
rifttable 0.6.3
- New functionality:
- Provide easier interface to code competing events by directly providing
event = "event_variable@Event_Type_One" in the design.
If multiple event types are present, estimate cumulative incidence and
differences/ratios of cumulative incidence in a competing-event setting.
- Allow for clustered observations in survival data, e.g., multiple rows per
person.
- Estimate ratios of survival and cumulative incidence, i.e., x-year risk
ratios. Use MOVER estimation for confidence intervals of both ratios and
differences in survival and cumulative incidence by default.
- Support weights, e.g., inverse-probability weights, directly via a
weights argument in the design. Weighted estimates are currently
available for many survival estimators: type = "cuminc", "surv", their
differences and ratios (e.g., "cumincdiff"), and "hr". This is a
breaking change for Cox models (type = "hr"), where providing weights in
the arguments list now generates an error.
- Bug fixes:
- Allow for
@ in factor levels for a table1_design().
rt_gt(): Output knitr-formatted tables for GitHub-flavored markdown also
in Quarto .qmd, similar to .Rmd.
- Better handling of edge cases, e.g., ratios of 0, when rounding estimates.
- Expanded documentation
- Restructure site.
- Separate documentation of estimators by outcome type.
- New FAQs on confidence levels, reference levels, custom functions, and
joint models.
rifttable 0.6.2
- New functionality:
- Add overall argument
exposure_levels to let user control handling of
missing exposure levels (NA) or factors with empty levels as the exposure.
type = "geomean" for geometric means.
- Documentation: Expand FAQs.
- Internal and bug fixes:
- Consider
exposure or trend of "" as missing, and stratum = "" as no
subsetting by the effect_modifier, instead of subsetting to effect
modifier being an empty string. Input check that a stratum must be provided
for joint models and strata are not empty.
- Consider missing
type as "blank".
- Do not add empty rows/columns if
type2 has empty results for some cells or
if only a trend variable and no exposure is given.
- Rounding works even if result vector contains strings (e.g., no estimate).
- More safeguards for all-
NA outcome variables. More input checks.
- Do not warn about non-
0/1 outcomes in log-linear models for ratios of
continuous variables.
- Add initial set of unit tests.
rifttable 0.6.1
- New functionality:
- Cox models (
type = "hr") allow for weights, clustering, and robust
standard errors.
- Argument
ratio_digits_decrease: By default, decrease number of decimal
digits shown for ratios by 1 digit for ratios > 3 and by 2 digits for ratios
- Leads to rounded ratios and confidence intervals of
1.23, 3.4, and
11.
rt_gt() now indents the first column and applies markdown formatting to it
by default.
- New FAQ vignette.
- Bug fixes:
- Binary outcomes returned
NA instead of 0 in unstratified tables
with all-null outcome.
type = "maxfu" ignored digits and diff_digits.
- Allow for different
exposure (strata labels) and arguments in one table.
- Show unstratified estimate if
exposure is "", not just for NA.
- Internal:
rt_gt(): suppress random id of gt tables to keep git diff slim.
- Keep variables
.event, .outcome, etc. available under their original
names.
- Require {risks} >= 0.4.2.
- Examples load the
breastcancer dataset from the risks package.
rifttable 0.6.0
- Breaking changes:
to is set to ", " by default, instead of "-" for ratio variables and
" to " for difference variables
- Custom functions are now directly called via the
type variable,
following a restructuring of all estimation functions with greater
flexibility.
design$type no longer accepts additional arguments, such as time points.
Supply list instead via design$arguments.
- Suppression of strata with sparse or re-identifiable data with
design$nmin
now differentiates between counts of total observations or outcomes,
depending on estimator.
- New function
table1_design(): Generate design of a descriptive "Table 1."
- New
outcome option "variable@level" for categorical variables that
displays level as a binary outcome. Used by table1_design().
- Support unstratified tables displaying the trend/linear slope (
trend
variable in the design) without an exposure.
- More customization:
rifttable(reference = ...): Label for the reference category.
design$ci: Width of confidence intervals.
design$na_rm: Omitting observations with missing outcome data.
design$arguments: Flexibly passing along any argument to estimation
functions.
- New vignette describing all estimators.
- Internal:
- Drop dependency on R >= 4.1 and native pipe.
- Require {risks} >= 0.4.0.
- Remove dependency on {labelled} package.
- The {gt} and {quantreg} packages are now optional as soft dependencies.
- Compatible with {dplyr} 1.1.0, {tidyselect} 1.2.0
rifttable 0.5.0
- khsmisc::table2() "graduated" into its own package. See {khsmisc} Changelog for earlier versions.
- Add
breastcancer() dataset
- Use R >= 4.1 native pipe,
|>
- Remove RMTL estimators