Skip to content

Releases: growthcharts/brokenstick

brokenstick 2.5.0

23 Mar 08:49
Compare
Choose a tag to compare

CRAN version brokenstick 2.5.0 corresponds to JSS manuscript doi:10.18637/jss.v106.i07

Changes:

  • Updates the manual vignette to conform to the accepted JSS manuscript (March 2023)
  • Updates the documentation for CRAN release
  • Adds the doi:10.18637/jss.v106.i07 for the forthcoming JSS paper to DESCRIPTION and documentation

brokenstick 2.4.0

31 Oct 22:54
Compare
Choose a tag to compare

brokenstick 2.4.0

Major changes:

  1. Major update to Broken Stick Model for Irregular Longitudinal Data to sync with revision JSS manuscript version dated 30-10-2022.
  2. Hiding knots is convenient and automatic by setting the hide entry in the brokenstick object. The hide argument can also be used in print(), plot(), get_knots(), get_omega() and summary().
  3. Changes the default number of knots in brokenstick() to 5. The former default produced a solution without internal knots. The new default produces a generally more informative starting model when the user does not specify knots (using knots = c(..., ...)) or the number of knots (using k = ...).
  4. Replaces the strip_data argument in predict() by the a more intuitive include_data argument. By default, observed data are now included into the predictions, similar to predict.lm().
  5. Turns error Argument 'newdata' is required for a light brokenstick object. of brokenstick() into a warning and returns NULL.
  6. Adds new cor and lower arguments to summary.brokenstick() to tweak output.
  7. Adds documentation for S3 output functions.
  8. Adds an example to plot.brokenstick() on how to create a black and white figure of trajectories

Minor changes:

  • Adds hide field to brokenstick object
  • Adds hide arguments to coef.brokenstick(), summary.brokenstick(), plot(), get_knots() and get_omega
  • Replaces what argument of get_omega() by cor
  • Separates summary() and print() functionality
  • Updates smocc_200 and fit_200 objects
  • Updates to roxygen 7.2.1
  • Replace hard-coded variable name hgt_z by a dynamic name (#8)
  • Extends capabilities of plot_trajectory() with shape and linetype options
  • Replaces knots = 0:3 by knots = 0:2 in examples
  • Updates the perfectmodel vignette
  • Expression predict(fit_200_light, x = "knots") now produces warning message instead of crashing
  • Updates objects fit_200 and fit_200_light to use automatic boundary (2.68y) instead of 3 yrs
  • Automatically sorts any user-specified values for knots in increasing order to evade problems with predict()

brokenstick 2.1.0

30 Mar 19:09
Compare
Choose a tag to compare

Improvements suggested by Journal Stat Soft.

  • Defines an model.frame.brokenstick() function that adheres to conventions
  • Changes return values by fitted() and residuals() to vectors
  • Defines a less verbose print.brokenstick() helper
  • Make all calls to library() to character argument
  • Removes library(lme4) from code to evade changing the search path
  • Updates vignettes/bibliography.bib to title case

Other changes

  • Reorganises the vignettes
  • Renames brokenstick-article.Rmd to manual/manual.Rmd, include high-res version on the site and take out of the package to save space
  • Removes superfluous navigation from vignettes
  • Shrinks the size of brokenstick object by removing the formula list element
  • Shrinks the size of light objects by removing the sigma2j vector from the light brokenstick class

brokenstick 2.0.0

11 Nov 17:02
Compare
Choose a tag to compare

This is a major upgrade in terms of usability and completeness. Version on CRAN

Main changes

  1. Function brokenstick() in version 2.0.0 sets the Kasim-Raudenbush sampler as the default method. The former method lme4::lmer() remains available by setting method = "lmer" argument.

  2. Version 2.0.0 adopts the variable names of the coda package (e.g., start, end, thin, niter, and so on) and stores the results of the Kasim-Raudenbush sampler as objects of class mcmc.

  3. For method = "kr" one may now inspect the solution of the sampler by standard functions from the coda package. For method = "lmer" we can apply functions from the lme4 package for merMod objects.

  4. Version 2.0.0 redefines the brokenstick class. New entries include call, formula, internal, sample, light, data, imp and mod. Removed entries are knots (renamed to internal) and draws (renamed to imp). We may omit the newdata argument for the training data. Setting light = TRUE creates a small version of the brokenstick object. Objects of class brokenstick are not backwards compatible, so one should regenerate objects of class brokenstick in order use newer features in 2.0.0.

  5. Version 2.0.0 conforms to classic model fitting interface in R. Renames the new_data argument to newdata to conform to predict.lm(). Methods plot() and predict() no longer require a newdata argument. All special cases of predict() updated and explained in documentation and examples.

  6. Version 2.0.0 adds methods coef(), fitted(), model.frame(), model.matrix(), print() and summary for the brokenstick object.

  7. Simplifies algorithmic control. Renames control_brokenstick() to set_control() and removes a layer in the control list.

Minor changes

  • Stabilises the rgamma() calls in KR-algorithm for edge cases.
  • predict_brokenstick() can now work with the both (internal) training and (external) test data.
  • Removes the superfluous type argument from predict.brokenstick()
  • Adds a function get_omega() to extract the variance-covariance matrix of the broken stick estimates
  • Adds choice "dropfirst" to get_knots()
  • Improves error messages of edge cases in test-brokenstick_edge.R
  • Perform stricter tests on arguments of brokenstick()
  • Introduces argument warn_splines in make_basis() to suppress uninteresting warns from splines::bs()
  • Removes superfluous knotnames argument in make_basis()
  • Argument x in make_basis() is now a vector instead of a column vector
  • Introduces new xname argument in make_basis() to set the xname

brokenstick 2.0.0

04 Nov 16:35
Compare
Choose a tag to compare

This is a major upgrade in terms of usability and completeness. NOTE: See tag v2.0.0_CRAN for CRAN version.

Main changes

  1. Function brokenstick() in version 2.0.0 sets the Kasim-Raudenbush sampler as the default method. The former method lme4::lmer() remains available by setting method = "lmer" argument.

  2. Version 2.0.0 adopts the variable names of the coda package (e.g., start, end, thin, niter, and so on) and stores the results of the Kasim-Raudenbush sampler as objects of class mcmc.

  3. For method = "kr" one may now inspect the solution of the sampler by standard functions from the coda package. For method = "lmer" we can apply functions from the lme4 package for merMod objects.

  4. Version 2.0.0 redefines the brokenstick class. New entries include call, formula, internal, sample, light, data, imp and mod. Removed entries are knots (renamed to internal) and draws (renamed to imp). We may omit the newdata argument for the training data. Setting light = TRUE creates a small version of the brokenstick object. Objects of class brokenstick are not backwards compatible, so one should regenerate objects of class brokenstick in order use newer features in 2.0.0.

  5. Version 2.0.0 conforms to classic model fitting interface in R. Renames the new_data argument to newdata to conform to predict.lm(). Methods plot() and predict() no longer require a newdata argument. All special cases of predict() updated and explained in documentation and examples.

  6. Version 2.0.0 adds methods coef(), fitted(), model.frame(), model.matrix(), print() and summary for the brokenstick object.

  7. Simplifies algorithmic control. Renames control_brokenstick() to set_control() and removes a layer in the control list.

Minor changes

  • Stabilises the rgamma() calls in KR-algorithm for edge cases.
  • predict_brokenstick() can now work with the both (internal) training and (external) test data.
  • Removes the superfluous type argument from predict.brokenstick()
  • Adds a function get_omega() to extract the variance-covariance matrix of the broken stick estimates
  • Adds choice "dropfirst" to get_knots()
  • Improves error messages of edge cases in test-brokenstick_edge.R
  • Perform stricter tests on arguments of brokenstick()
  • Introduces argument warn_splines in make_basis() to suppress uninteresting warns from splines::bs()
  • Removes superfluous knotnames argument in make_basis()
  • Argument x in make_basis() is now a vector instead of a column vector
  • Introduces new xname argument in make_basis() to set the xname

brokenstick 1.1.0

02 Nov 20:20
Compare
Choose a tag to compare

brokenstick on CRAN

First CRAN release!

Major changes

Minor changes

  • Updates cran-comments
  • Adds a link to the JSS manuscript in the description field
  • Removes unnecessary \dontrun{} directives
  • Exports parse_formula() to remove ::: from examples
  • Sanitises chunk names by removing : and _ characters
  • Corrects some "first-order" mindo's to "second-order"
  • Repairs plotting glitch in oldfriends.Rmd
  • Limits number of printed rows in predict.brokenstick() example
  • Remove the prediction vignette and its dependencies
  • Fail early when user specifies degree > 1
  • Adds argument what to plot.brokenstick()
  • Solves a bug that always yielded zero rows for case 3 prediction
  • Solves a data combination problem in predict() when the group variable is a factor
  • Add a better explanation of the boundary parameter
  • Evades that model.matrix() removes rows with NA if degree = 0
  • Moves ggplot2 to suggests
  • Copies over the install.on.demand() function from mice

brokenstick 0.72.0

08 Jul 22:17
Compare
Choose a tag to compare

brokenstick 0.72.0

  • Adds support for fitting and predicting a brokenstick model with degree = 0
  • Avoids ggplot2 out-of-range/missing messages through pre-filtering
  • Adds badges, resources and references to README
  • Updates license and CITATION
  • Removes the import dependency on growthstandards package
  • Updates and corrects plot examples

brokenstick 0.70.0

15 Jun 20:05
Compare
Choose a tag to compare

brokenstick 0.70.0 follows the tidymodels paradigm. This version includes the following changes:

  1. brokenstick adopts the tidymodels philosophy. It is now possible to fit a model using five different interfaces. There is no need anymore the hardcode variable names in the source data.

  2. Version 0.70.0 introduces a new estimation method, the Kasim-Raudenbush sampler. The new method is more flexible and faster than lme4::lmer() when the number of knots is large.

  3. Version 0.70.0 introduces two simple correlation models that may be used to smooth out the variance-covariance matrix of the random effects.

  4. The definition of the brokenstick class has changed. Objects of class brokenstick do no longer store the training data.

  5. The brokenstick_export class is retired.

  6. The predict() function is fully rewritten as has now a new interface. Since the brokenstick class does not store the training data anymore, the predict() function now obtains a new_data argument. Syntax that worked for brokenstick package before 0.70.0 does not work anymore and should be updated. The shape argument replaces the output argument.

  7. The plot() function is rewritten, and now requires a new_data specification.

  8. Replaced functions: brokenstick() replaces fit_brokenstick(), predict.brokenstick() replaces predict.brokenstick_export(), get_r2() replaces get_pev()

  9. Removed functions: get_data(), get_X(), export()

Legacy version

15 Jun 14:25
Compare
Choose a tag to compare

This release marks the end of the line of development of the classic interface.

The release will be superseded by a much updated version with some breaking changes. That update will preserve functionality, but - unfortunately - your old code won't run with newer versions of the brokenstick package. The advice is to adopt the new interface, using the "Help for old friends" vignette.

Use this "legacy version" only if you cannot update your code.