Changelog
Source:NEWS.md
Version 0.4.1
CRAN release: 2026-01-08
Version 0.4.0
CRAN release: 2024-02-15
New Features
cpr()’sprogressargument has been extended to control if a progress bar is used for just the cpr steps, or if a more detailed progress form of the influence weight calculations is reported.influence_of_iknots()gains parallel execution viapbapply()(#17)plot.cpr_cp()gains the argumentcomparativewhich, when set toFALSEand only onecpr_cpis passed in for plotting, the graphic will appear more like theplot.cpr_bs()results. Whencomparative = TRUEor more than onecpr_cpis present, the behavior from v0.3.0 is retained.cp.formula()gains themethods.argsargument to pass arguments to the regression method instead of relying on....d_order_statistic()andp_order_statistic()were added. These functions allow you to get the density or distribution function for the jth order statistic from a sample of size n from a distribution with defined density and distribution functions within R.sign_changes()will count the number of sign changes of the first or second derivative of a spline function.get_spline()returns standard errors and derivatives (#60)
User Visible Changes
-
loglikelihood()is not exported in the namespace -
summary.cpr_cp()now calculates the “wiggle” of the function by default, that is, changes the default fromwiggle = FALSEtowiggle = TRUE -
cp()andcn()both have the defaultkeep_fitargument set to TRUE. This change was made to simplify the prediction methods. -
print.cpr_bt()returns the object invisibly, it used to return astr(x). -
print.cpr_cn()returns the object invisibly -
print.cpr_cnr()returns the object invisibly -
print.cpr_cpr()returns the object invisibly
Non-User Visible Changes
Refactor of c++ defining basis functions, derivatives of basis functions, b-splines structures
cp.formula()checks theformulaand requires thatbsplines()is used once and is the first term on the right hand side of the formula.
Version 0.3.0
CRAN release: 2023-11-29
New Examples
-
cpr()has examples
Other Changes
- Depends on Rcpp >= 0.12.11 (actually moved to >= 1.0.11) to handle registering native routines.
- Moves rgl from
ImportstoSuggests(re #36) - Refactoring base code to eliminate the use of dplyr, tidyr, tibble, etc. Focus on base R methods to reduce install dependencies and improve long term stability of the package.
- Require R > 3.5.0
- Stop using testthat for testing
- Remove use of the tidyr, dplyr
- Improve documentation
- Minor bug fixes
- Replace use of now deprecated
ggplot2::aes_string()
Version 0.2.3
CRAN release: 2017-03-07
First public release.
New Features
-
plot.cpr_cn()supportsrglandplot3Dgraphics - start of a vignette.
Version 0.2.2
New Features
-
get_spline()is an S3 method for getting adata.frameof interpolated values of a spline given acpr_cpobject. Later development will add methods forcpr_cnobjects. -
predict.cpr_cp()andpredict.cpr_cn()methods added -
matrix_rank()added -
update_bsplines()andupdate_btensor()methods added (#27)
Version 0.2.1
Documentation improvements.
New Features
-
influence_of()andplot.cpr_influence_of()provide a clean interface for users to explore the influence of a set of knots on a spline function. (#19) -
color(TRUE/FALSE) option added toplot.cpr_bs(). -
plot.cpr_cn()lets the user plot 2D surfaces for tensor product surfaces. The plots are for the whole surface if the input is a 2D tensor product, and is a 2D slice evaluated at a given value for other margins for 3+ dimensional tensor products. -
is.a collection ofis.cpr_cp(),is.cpr_bs(), … functions added. - The dataset
spdghas been added to the package.
Other Changes
- removed a redundant
build_tensor()definition
Version 0.2.0
This version has a fairly polished set of tools for b-splines, cpr, and cnr. This version seems to be in a good place for use in the three major papers
- Methods 1: uni-variable functions,
- Methods 2: multi-variable functions, and
- Software paper.
Continued development should be focused on bug fixes and minor enhancements.
New Features
- Option to save fits in
cnr()(#8) - Option to define the number of polynomial coefficients to use in
cnr()(#10) - x-axis tick label options for plotting b-splines (#12)
- added
show_xitocpr:::plot.cp()and usingggplot2::geom_rug()to show the location of the knots for each of the control polygons plotted. -
summary()forcpr_cnandcpr_cnrobjects added. -
plot()method forcpr_cnrobjects. -
marginoption incnr()allows the user to specify which marginals CNR will be applied to. - Using
sec.axisoption fromggplot2_2.2.0for the plotting of the knot sequence and numeric values inplot.cpr_bs()(#18)
Bug Fixes
-
fromandtoarguments forplot.cpr_cpr()fixed (#14) - correct construction of missing
iknotsargument inbtensor() -
keepis correctly handled in thecnr()call. -
show_xicorrectly handled in theplot.cpr_cp()call.
Non-visible changes
- non-exported function
knot_expr()created to help with plotting the knot locations incpr:::plot.cpr_bs().
Version 0.1.1
New Features
-
plot.cpr_cp()allows the user to suppress the plotting of the control polygon. When plotting multiple control polygons and splines, this option will make it easier to view the spline functions.
Version 0.1.0
First version of univariable cpr methods ready for deployment
Big picture
cpr::cp() and cpr::cpr() have been used for the simulations which are aimed to be part of the first manuscript. Modifications might be needed, but hopefully the univariable methods are stable.
A lot of changes in the implementation and API have occurred from the 0.0.x series. The aim for version 0.2.0 will be to have a very similar API for cpr::cn() and cpr::cnr() as provided for the cpr::cp() and cpr::cpr() calls.
version 0.0.5
New Features
- First and second derivatives of B-splines via
bsplineD()
Extended Documentation
- Examples added to
bsplines()
End User non-visible changes:
- Added the not-to-be-exported function
generate_cp_data() - Redesign of the
deboor.cppfile so that thebsplines()are accessible. The prior design only allowed access to the basis, the current design allows access to the generic B-splines.
version 0.0.3
Version 0.0.3 is the version of the package used to run the analysis and simulations presented in the paper submitted to the 28th International Biometrics Conference, Western North American Region (WNAR) of the Internal Biometric Society, Student paper competition. The conference will be held 10 - 16 July 2016 in Victoria, British Columbia, Canada.
Bug Fixes
Corrected the attributes calls within
cpr()after adjusting the attributes being set on acpr_cp.plot.cpr_bs()correctly displays the indices for the knot sequence.
End User Visible Changes:
- The knot insertion matrix W is accessible to end users in a new way. Names of functions in
boehem.cppare cleaner. -
plot.cpr_cpr()allows user to select either control polygons or sums of squared residuals to be plotted.
version 0.0.2
New Features
- Added the function
tensor()for building tensor products ofcpr::bsplines(). - Added the function
influence_weights()to get the influence weights for each internal knot on each marginal of a tensor product. -
is.cpr_bs()added. - S3 methods for
cp()
Bug Fixes
-
trimmed_quantile()handles theuse_uniqueoption correctly - better handling of … in
cp()andcpr()
version 0.0.1.9003
First usable version with the method based on the ‘importance weight’ of internal knots based on reversing the methods presented by Boehm (1980). Development of metrics and methods for parsing out the preferable models.
Version 0.0.1.9003 was the first stable version for fitting the exact data model.