Releases: insightsengineering/cards
Releases · insightsengineering/cards
v0.4.0
New Features and Functions
- Added functions
as_cards_fn()
,is_cards_fn()
, andget_cards_fn_stat_names()
. These functions assist is creating functions with attributes enumerating the expected results. - Updated
ard_continuous()
andard_complex()
to return full ARDs when functions passed are created withas_cards_fn()
: instead of a single row output, we get a long ARD with rows for each of the expected statistic names. (#316) - Added function
ard_pairwise()
to ease the calculations of pairwise analyses. (#359)
Other Updates
- Improved messaging in
print_ard_conditions()
when the calling function is namespaced. (#348) - Updated print method for
'card'
objects so extraneous columns are never printed by default.
Lifecycle Changes
- No longer exporting functions
check_pkg_installed()
,is_pkg_installed()
,get_min_version_required()
,get_pkg_dependencies()
. These functions are now internal-only. (#330)
Bug Fixes
- The
tidy_ard_column_order()
now correctly orders grouping columns when there are 10+ groups. This also corrects an issue in the hierarchical functions where the ordering of the variables matters. (#352)
What's Changed
- 330 update standalone@main by @ayogasekaram in #349
- Update check.yaml by @shajoezhu in #351
- Sorting fix for 10+ groups in
tidy_ard_column_order()
by @ddsjoberg in #353 - Improved msg in
print_ard_conditions()
when the calling function is namedspaced by @ddsjoberg in #354 - print method update by @ddsjoberg in #355
- Update awkward by/strata phrasing by @jtalboys in #358
- Adding
ard_pairwise()
by @ddsjoberg in #360 - Adding
as_cards_fn()
function by @ddsjoberg in #361
New Contributors
- @shajoezhu made their first contribution in #351
Full Changelog: v0.3.0...v0.4.0
v0.3.0
New Features & Updates
- Added functions
ard_stack_hierarchical()
andard_stack_hierarchical_count()
that ease the creation of ARDs for multiple nested or hierarchical structures. (#314) - Added functions
update_ard_fmt_fn()
andupdate_ard_stat_label()
to update an ARD's formatting function and statistic label, respectively. (#253) - Added
rename_ard_columns(unlist)
argument, which unlists specified columns in the ARD data frame. (#313) - Added
ard_strata()
function to ease the task of calculating ARDs stratified by one or more other categorical variables. (#273) - Added functions
mock_continuous()
,mock_categorical()
,mock_dichotomous()
,mock_missing()
,mock_attributes()
to build ARDs in the absence of a data frame. Where applicable, the formatting functions are set to return'xx'
or'xx.x'
to aid in the construction of mock tables or table shells. (#256) - Added functions for printing results from
eval_capture_conditions()
. Captured conditions can be printed as either errors or messages withcaptured_condition_as_error()
andcaptured_condition_as_message()
, respectively. (#282)
Other Updates
- The
ard_hierarchical_count()
function has been updated to match the behavior ofard_hierarchical()
and results are now only returned for the last column listed in thevariables
arguments, rather than recursively counting all variables. - Add columns
'fmt_fn'
,'warning'
, and'errors'
toard_attributes()
output. (#327) - Add checks for factors with no levels, or any levels that are
NA
intoard_*
functions (#255) - Any rows with
NA
orNaN
values in the.by
columns specified inard_stack()
are now removed from all calculations. (#320)
What's Changed
- Adding download badge to README by @ddsjoberg in #318
- Workflow propagations by @walkowif in #304
- Removing NA
ard_stack(.by)
values from calculations by @ddsjoberg in #321 - Adding fns for updating ARDs by @ddsjoberg in #315
- Added functions to print conditions by @ddsjoberg in #322
- Adding
rename_ard_columns(unlist)
argument by @ddsjoberg in #323 - Added functions for mock tables by @ddsjoberg in #328
- Adding
ard_stack_hierarchical()
function by @ddsjoberg in #324 - Check factor variables for
NA
or completely missing levels inard_*
functions by @jtalboys in #331 - Adding links to other resources in README by @ddsjoberg in #340
- update AE examples by @bzkrouse in #339
- Updating error message in
rename_ard_columns()
by @ddsjoberg in #341 - Add columns
fmt_fn
,warning
, anderrors
toard_attributes
output by @jtalboys in #343 - Adding
ard_strata()
by @ddsjoberg in #303
New Contributors
Full Changelog: v0.2.2...v0.3.0
v0.2.2
New Features & Updates
- Converted
ard_total_n()
to an S3 generic and added methodard_total_n.data.frame()
. - Added the
bind_ard(.quiet)
argument to suppress messaging. (#299) - Improved ability of
shuffle_ard()
to populate missing group values where possible. (#306) - Added
apply_fmt_fn(replace)
argument. Usereplace=FALSE
to retain any previously formatted statistics in thestat_fmt
column. (#285) - Added
bind_ard(.distinct)
argument, which can remove non-distinct rows from the ARD across grouping variables, primary variables, context, statistic name and value. (#286)
Bug Fixes
- Fix in
print_ard_conditions()
when the variables were factors, which did not render properly incli::cli_format()
. - Bug fix in
print_ard_conditions()
and we can now print condition messages that contain curly brace pairs. (#309)
What's Changed
- Update pkgdown site logo by @edelarua in #293
- Use
AEDECOD
instead ofAETERM
in tests & examples by @edelarua in #294 - add check_ard_structure() function to unit tests. by @ayogasekaram in #289
- Adding
ard_total_n.data.frame()
method by @ddsjoberg in #296 - Add
as_card()
function to convert to class 'card' by @edelarua in #292 - Fix bug introduced by returning empty ARD in
ard_complex()
by @edelarua in #297 - Fix in
print_ard_conditions()
where variable not processed correctly withcli::cli_format()
by @ddsjoberg in #298 - Workflow propagations by @walkowif in #284
- Added the
bind_ard(.quiet)
argument by @ddsjoberg in #300 - adding more selectors by @ddsjoberg in #280
- Adding
add_calculated_row()
by @ddsjoberg in #281 - Added
apply_fmt_fn(replace)
argument by @ddsjoberg in #305 - Added
bind_ard(.distinct)
argument by @ddsjoberg in #307 - Filling NA group values for "overall" calculations during
shuffle_ard()
by @bzkrouse in #306 - Migrated a cardx
ard_shuffle()
test by @ddsjoberg in #308 - Bug fix in
print_ard_conditions()
when message had curly brace pairs by @ddsjoberg in #310
Full Changelog: v0.2.1...v0.2.2
v0.2.1
- Update in
ard_categorical()
to usebase::order()
instead ofdplyr::arrange()
, so the ordering of variables match the results frombase::table()
in some edge cases where sorted order was inconsistent. - Update in
ard_categorical()
to runbase::table()
output checks against coerced character columns. Previously, we relied on R to perform checks on the type it decided to check against (e.g. when it coerces to a common type). While the initial strategy worked in cases of Base R classes, there were some bespoke classes, such as times from {hms}, where Base R does not coerce as we expected.
What's Changed
- Using
base::order()
inard_categorical()
by @ddsjoberg in #288 - Update in
ard_categorical()
for some non-Base R classes by @ddsjoberg in #290
Full Changelog: v0.2.0...v0.2.1
v0.2.0
New Features & Updates
- Converting
ard_*()
functions and other helpers to S3 generics to make them extendable. (#227) - Added helper
rename_ard_columns()
for renaming/coalescing group/variable columns. (#213). - Added new function
ard_total_n()
for calculating the total N in a data frame. (#236) - Added the
nest_for_ard(include_data)
argument to either include or exclude the subsetted data frames in a list-column in the returned tibble. - Added
check_ard_structure(column_order, method)
arguments to the function to check for column ordering and whether result contains astat_name='method'
row. - Added the optional
ard_heirarchicial(id)
argument. When provided we check for duplicates across the column(s) supplied here. If duplicates are found, the user is warned that the percentages and denominators are not correct. (#214) - Improved messaging in
check_pkg_installed()
that incorporates the calling function name in the case of an error. (#205) - Updated
is_pkg_installed()
andcheck_pkg_installed()
to allow checks for more than package at a time. Theget_min_version_required()
function has also been updated to return a tibble instead of a list with attributes. (#201) - Styling from the {cli} package are now removed from errors and warnings when they are captured with
eval_capture_conditions()
. Styling is removed withcli::ansi_strip()
. (#129)
Bug Fixes
- Bug fix in
ard_stack()
when calls to functions were namespaced. (#242) - The
print_ard_conditions()
function has been updated to no longer error out if the ARD object does not have"error"
or"warning"
columns. (#240) - Bug fix in
shuffle_ard()
where factors were coerced to integers instead of their labels. (#232)
Lifecycle Changes
- Corrected order that
ard_categorical
(strata) columns would appear in the ARD results. Previously, they appeared in the order they appeared in the original data, and now they are sorted properly. (#221) - The API for
ard_continuous(statistic)
andard_missing(statistic)
arguments has been updated. Previously, the RHS of these argument's passed lists would be eithercontinuous_summary_fns()
andmissing_summary_fns()
. Now these arguments accept simple character vectors of the statistic names. For example,ard_categorical(statistic = everything() ~ c("n", "p", "N"))
andard_missing(statistic = everything() ~ c("N_obs", "N_miss", "N_nonmiss", "p_miss", "p_nonmiss"))
. (#223) - Updated
ard_stack()
to returnn
,p
, andN
for theby
variable when specified. Previously, it only returnedN
which is the same for all levels of the by variable. (#219) - Bug fix where
ard_stack(by)
argument was not passed toard_missing()
whenard_stack(.missing=TRUE)
. (#244) - The
ard_stack(by)
argument has been renamed to".by"
and its location moved to after the dots inputs, e.g.ard_stack(..., .by)
. (#243) - A messaging overhaul to utilize the scripts in
https://github.com/ddsjoberg/standalone/blob/main/R/standalone-cli_call_env.R
. This allows clear error messaging across functions and packages. (#42)- The
print_ard_conditions(call)
,check_list_elements(env)
,cards_select(.call)
arguments have been removed.
- The
What's Changed
- check installed updates to allow more than one pkg at a time by @ddsjoberg in #202
- add unit tests for non-syntactic variable names by @ayogasekaram in #198
- Removing cli styling from errors and warnings captured with
eval_capture_conditions()
by @ddsjoberg in #203 - Change default landing page by @cicdguy in #204
- Improved messaging in
check_pkg_installed()
by @ddsjoberg in #208 - Remove
@noRd
tags from unexported functions by @edelarua in #210 - Returning
ard_stack(by)
summary stats by @ddsjoberg in #220 - print update to use
n_col
arg for all columns by @ddsjoberg in #226 - fixing order of strata variables in
ard_categorical(strata)
by @ddsjoberg in #224 - removing snapshot that includes error text rom dplyr by @ddsjoberg in #228
- Add functions to specify correct cli call env by @edelarua in #217
- Adding
ard_heirarchicial(id)
argument by @ddsjoberg in #229 - Closes #179 improve error messaging in
alias_as_fmt_fn()
by @zdz2101 in #222 - Create .gitlab-ci.yml for internal automations by @cicdguy in #237
- Workflow propagation by @walkowif in #206
- Update
print_ard_conditions
example to generate warnings/errors by @edelarua in #231 - Adding deprecated note about
dplyr::vars()
as selector by @ddsjoberg in #239 - 211 ard attributes gen by @rparmm in #238
shuffle_ard()
to properly coerce group and variable names/levels to character by @bzkrouse in #233- progress! by @ddsjoberg in #241
- Passing
ard_stack(by)
arg toard_missing()
when.missing=TRUE
by @ddsjoberg in #245 - Converting fns to generics to make them extendable by @ddsjoberg in #246
- Updates to the ARD checking function by @ddsjoberg in #247
ard_stack(by)
argument has been renamed to".by"
by @ddsjoberg in #249- fix in
ard_stack()
when calls to functions were namespaced by @ddsjoberg in #250 - Improved environment handling in
process_formula_selectors()
for formulas by @ddsjoberg in #252 - Function to rename ard columns by @bzkrouse in #254
- 223 updated api for statistic argumnet by @ddsjoberg in #257
- Adding
ard_total_n()
by @ddsjoberg in #258 - Inherit the Denominators documentation section in all relevant functions by @edelarua in #260
- adding better error message for
ard_stack(.by)
when mis-specified withard_stack(by)
by @ddsjoberg in #264 - add AE example by @bzkrouse in #262
- add gsk as author by @bzkrouse in #267
- Fix in
compute_formula_selector()
for named lists with duplicate names by @ddsjoberg in #270 - Updated quartile stat labels by @ddsjoberg in #271
- add unit tests for protected names by @ayogasekaram in #266
- Fixes for the AE example by @bzkrouse in #277
- Exporting the is_pkg_installed functions (like before) by @ddsjoberg in #278
New Contributors
- @cicdguy made their first contribution in #204
- @walkowif made their first contribution in #206
- @rparmm made their first contribution in #238
Full Changelog: v0.1.0...v0.2.0
v0.1.0
- Initial release.
What's Changed
- initial commit by @ddsjoberg in #1
- Initial commits by @ddsjoberg in #2
- JSON by @ddsjoberg in #9
- updates to processing functions and exporting them by @ddsjoberg in #32
- Generalized the tidier to ARD pipeline by @ddsjoberg in #35
- added rlang purrr standalone fns by @ddsjoberg in #36
ard_continuous()
updates by @ddsjoberg in #37- readme update by @ddsjoberg in #41
- added strata arg by @ddsjoberg in #44
- Create version-bump.yaml by @ddsjoberg in #46
- added checking by @ddsjoberg in #48
- added fill_formula_selectors() by @ddsjoberg in #57
- added fmt_fn argument by @ddsjoberg in #58
- Adding
ard_categorical(statistics)
argument by @ddsjoberg in #61 - Add stat_labels argument to
ard_continuous()
andard_categorical()
by @bzkrouse in #60 - Fix for leading space in
xx.x%
formats by @ddsjoberg in #70 - Documenting un-exported functions by @ddsjoberg in #75
- Added PR Template by @ddsjoberg in #76
- adding argument type/class documentation by @ddsjoberg in #78
- Adding
round5()
to perform standard rounding, which is now the default by @ddsjoberg in #77 - Updated quantile type to match SAS by @ddsjoberg in #74
- adding
ard_dichotomous()
by @ddsjoberg in #80 - Added
ard_hierarchical()
andard_hierarchical_count()
by @ddsjoberg in #82 - No longer warning when formatted value is longer than the
xx.x
format by @ddsjoberg in #87 - Updated
tbl_cross()
withpercent
argument by @ddsjoberg in #84 - Fmt fn arg by @bzkrouse in #83
- Shuffle ard by @bzkrouse in #86
- Checks for structures by @ddsjoberg in #95
- selector updates by @ddsjoberg in #100
- more unit tests for ARD column names by @ddsjoberg in #101
- Updates to the counting code by @ddsjoberg in #94
- Adding 'card' print method by @ddsjoberg in #102
- Adding
ard_complex()
by @ddsjoberg in #109 - package installtion checking functions by @ddsjoberg in #112
- modify class check for shuffle_ard by @bzkrouse in #114
- re-org pkgdown yaml and other docs by @ddsjoberg in #115
- exporting a previously internal fn by @ddsjoberg in #116
- removing flatten_ard() from package by @ddsjoberg in #119
- Added
is_pkg_installed()
by @ddsjoberg in #127 - adding tidy_ard_row_order() by @bzkrouse in #122
- adding
print_ard_conditions()
by @ddsjoberg in #120 - Adding a temporary hex sticker by @ddsjoberg in #139
- workflow updates by @ddsjoberg in #140
- using rlang::error_call() to get calling function name for messaging by @ddsjoberg in #134
- Updated API for
check_list_elements()
by @ddsjoberg in #131 - CONTRIBUTING.md by @ddsjoberg in #142
- using the standalone pkg by @ddsjoberg in #141
- selector update by @ddsjoberg in #130
- Update PULL_REQUEST_TEMPLATE.md by @ddsjoberg in #148
- Default
by
argument forard_*()
functions by @bzkrouse in #146 - readme update by @ddsjoberg in #152
- adding examples to Rd files by @ddsjoberg in #154
- Removed broom/broom.helper dependencies by @ddsjoberg in #147
compute_formula_selector()
now removed named elements not present indata
argument by @ddsjoberg in #155- shuffle_ard() to handle ARDs with no group_level present by @bzkrouse in #156
- edit vignette by @bzkrouse in #160
- Adding env to processed formulas by @ddsjoberg in #161
- Resize cardx logo in README by @edelarua in #163
- Propagate files from insightsengineering/.github by @insights-engineering-bot in #165
- [skip actions] Propagate files from insightsengineering/.github by @insights-engineering-bot in #166
- Check roxygen documentation by @edelarua in #168
ard_categorical(denominator)
updates for missing variables by @ddsjoberg in #169- Correcting the default width in formatting functions by @ddsjoberg in #164
- add default to
tidy_as_ard()
by @ayogasekaram in #172 - Standalone updates by @ddsjoberg in #180
- Closes #144 better default formatting for dates/datetimes by @zdz2101 in #175
- adding
replace_null_statistic()
by @ddsjoberg in #186 - Arg rename by @ddsjoberg in #183
- GH workflows updates by @ddsjoberg in #187
- Update _pkgdown.yml by @ddsjoberg in #188
- Pkgdown updates by @ddsjoberg in #189
- create
ard_stack()
function by @bzkrouse in #178 - added structural check to fns that process formula-selectors by @ddsjoberg in #190
- make sure NULL and character/logical NA are processed to be numeric NA by @bzkrouse in #192
- adding selecting function by @ddsjoberg in #193
- shuffle trims results with length > 1 by @ddsjoberg in #195
- More pre-release renaming by @ddsjoberg in #194
- Getting started by @ddsjoberg in #197
- Release candidate v0.1.0 [skip vbump] by @ddsjoberg in #199
New Contributors
- @ddsjoberg made their first contribution in #1
- @bzkrouse made their first contribution in #60
- @edelarua made their first contribution in #163
- @insights-engineering-bot made their first contribution in #165
- @ayogasekaram made their first contribution in #172
- @zdz2101 made their first contribution in #175
Full Changelog: https://github.com/insightsengineering/cards/commits/v0.1.0