plot_raincloud_ly()gainsscatter_box_gap(defaultbox_width / 2 + 0.02) to set the distance from the group position to the scatter; it is now the same for everyscatter_layout(#41).plot_raincloud_ly()gainsbutton_optionsto customise the position and style of the toggle buttons (#40).plot_raincloud_ly()density_sideandscatter_sidedeprecated; the density is always drawn right/top of the group position and the scatter left/bottom of it.plot_raincloud_ly()scatter_layoutoption"dots"is renamed to"stacked", and"center"is removed; usescatter_width = 0instead.plot_raincloud_ly()jitter_widthis renamed toscatter_widthand now also sets the width of"stacked"scatter, sodot_spacingis removed.plot_raincloud_ly()dot_binwidthis renamed toscatter_binwidth.plot_raincloud_ly()validates numeric arguments more thoroughly.
- Adjust
plot_raincloud_ly()scatter position and hoverdistance so boxplot hover stays reachable. - Create plotly demo GIF in README and pkgdown site
- New
plot_raincloud_ly()draws an interactive plotly raincloud plot (#22). - Breaking:
plot_corr_matrix()is renamed toplot_corrmat_ly(), so interactive plotly functions share the_lysuffix. plot_corrmat_ly()hover text now shows the sample sizenused for each pair, according touse(#33).plot_corrmat_ly()withuse = "na.or.complete"no longer errors when there are no complete rows; it returnsNAcorrelations asstats::cor()does (use = "complete.obs"still errors).- Breaking:
get_masked()no longer has a defaultthreshold; it must now be specified (#37). - Initiated vignettes (#11).
get_masked()now errors ifvecis not numeric (including logical) or contains negative values and handlesNAs; only values>= 0andNAare accepted (#34).get_masked()gainsmask_naandmask_zeroto allow user to choose whether whether to maskNAs or zeros (both default toFALSE, backward compatible). The function's secondary masking now ensures at least two values are masked, at least one of them positive. Masked zeros andNAs count towards the two, but the smallest positive value(s) are always masked even if only zeros orNAs were masked (#34).- Rewrite
get_masked()documentation and add a vignettevignette("get_masked")(#11, #34). get_ultimate()gainsna.rm(defaultTRUE, backward compatible). Setna.rm = FALSEto treatNAas a meaningful value considered as a valid candidate.excludemust not containNA(it now errors); usena.rminstead (#35).- Fix typo in
npdar-package.R.
- Rewrite
README.mdwithREADME.qmdand update.Rbuildignore. - Add light switch and MathJax for math notations in pkgdown site.
- Breaking: renamed functions to snake_case; the domain families drop
get_, the utilities keep it:get_bp()→bp_assess()get_bpExpected()→bp_expected()get_bpRelative()→bp_relative()get_bpCategory()→bp_category()get_auditYear()→audit_year()get_auditYears()→audit_year_range()get_corrMat()→plot_corr_matrix()- Help topics
family_bp→bp_familyandfamily_auditYear→audit_year_family. get_frequency(),get_masked()andget_ultimate()are unchanged.
- Breaking: renamed arguments to snake_case with clearer names:
audit_year_range():startYear→start_year,endYear→end_year.get_masked():maxNum→threshold,maskMessage→mask_label.get_ultimate():except→exclude,warning→warn.
- Edit help aliases
bp(forbp_family) andfiscal_year(foraudit_year_family). - Breaking: In
bp_family,bp_assess()no longer takesoption; it validates inputs once and returns a tibble withexpected,zscore,percentileandcategory. - In
bp_family, functions now error ifsex,age_years,height_zandbp_valuediffer in length (no recycling), andbp_relative()returns one row per input for NICE/BHF. - In
bp_family,bp_category()gains.quiet, and.quiet = TRUEnow also silences the NICE/BHF notices inbp_expected()andbp_relative(). - In
bp_family, fixedbp_category()andbp_assess()returning "Prehypertension" for BP below the lowerbp_limit; these now returnNA.
- Added
count_naargument toget_frequency()to allow user to count missing values inmeasuresas their own category (category = NA) and include them in the denominator. It is backward-compatible as default isFALSE(exclude NAs) (#28). get_frequency()now returns measures in the order specified inmeasuresinstead of alphabetical/numerical order. (#29).- Simplified
get_frequency()andget_corrMat()internals and tidied the unit tests. - Added a pkgdown website, https://rcpch.github.io/npdar/, with a grouped function reference (#11).
- Added
get_corrMat()function to create interactive correlation matrix withplotly(#23). - Added new feature for
get_frequency()to summarise measures by nested groups. - Consistent get_ + camelCase naming convention:
mask_numerators()→get_masked()get_BP()→get_bp()get_BPCategory()→get_bpCategory()get_BPExpected()→get_bpExpected()get_BPRelative()→get_bpRelative()get_AuditYear()→get_auditYear()get_AuditYears()→get_auditYears()
- Updated to roxygen2 8.0.0 and improved documentation.
- Renamed
get_frequency()"response" as "category" (PR #20). - Added new feature for
get_AuditYear()to customisestart_monthand return quarter (PR #20). - Revised
get_AuditYear()unit tests (PR #20).
- Fixed
get_frequency()drop logical/factor measures' unobserved levels (PR #16).
- Added
get_frequency()to summarise categorical measures by group, returning counts, denominators, and percentages in a long-format tibble (#7). - Added GitHub Actions R-CMD-check CI workflow.
- Cleaned R CMD check notes in
family_BPandget_frequency.
- Added clinical use disclaimer clarifying the package is for audit analysis only, not clinical decision-making (#4).
- Added contributors (Amani Krayem, Humfrey Legge, Saira Pons Perez) to DESCRIPTION (#4).
- Documented UK-WHO and US CDC height references used by NHBPEP Fourth Report
BP functions; added
childsdsto Suggests (#5). - Fixed non-ASCII characters in source files.
- Added
get_AuditYear()andget_AuditYears()for audit year determination and sequence generation following NPDA conventions (PR #3). - Added
npdar-package.Rwith package-level documentation. - Renamed
bp_functions.Rtofamily_BP.R. - Added
man-roxygentemplates.
- Added BP functions:
get_BP(),get_BPExpected(),get_BPRelative(), andget_BPCategory()implementing NHBPEP Fourth Report (paediatric) and NICE/BHF (adult) guidelines. - Added
mask_numerators()for small-count suppression in audit outputs. - Added
get_ultimate()for longitudinal data summarisation. - Added unit tests for BP functions.
- Added README with overview, installation, and quick-start examples (PR #1).
- Fixed roxygen2 typos: "peadiatric" → "paediatric", "explicity" → "explicitly" (PR #1).
- Initial package skeleton with DESCRIPTION, NAMESPACE, and LICENSE.