'Constrained Quantile Regression with B-Splines'
Overview
Quantile regression with B-splines under shape constraints. The initial version with cubic splines, augmented with splines of degree 1 to 4, is now able to handle all degrees (degree >= 6 without any constraint). Constraints for degrees 3 (monotone), 4 (monotone and convex) and 5 (convex) use the Karlin-Studden SOCP characterization for the sign of the polynomial (Karlin and Studden, 1966; Papp and Alizadeh, 2014), while other constraints are added as linear problems. The method for monotone constraints of cubic splines is described in Abbes (2025) doi:10.5281/zenodo.17427913. For quartic splines, see other references given in the README. All B-spline and polynomial functions have been rewritten for consistency. This package provides a fully independent original B-spline library for conversion between PP-form and B-spline representation, evaluation, differentiation, callable and non-callable objects, human-readable PP forms, and basis visualization, all based on De Boor's theory. It also extends to multiple knots to capture singularities. This feature is robust in the package, including for constrained regression. This R implementation is intended for demonstration and prototyping. An equivalent Python package is available at https://pypi.org/project/BsplineQuantRegpy/.
Install
Health
- OK13 OK2026-08-05
- NOTE12 OK, 1 NOTE2026-08-01
- OK13 OK2026-07-26
- WARNING8 OK, 5 WARNING2026-07-22
- OK8 OK2026-06-24
Documentation
- Help pages
- 46 (4 internal)
- Examples that run
- 83%10 run in a plain check · 2 never run
- Exported functions with examples
- 32%
- Documented parameters
- 100%
- Return-value docs
- 97%
- Help pages citing references
- 4%
Also includes 11 demo scripts (run with demo())
Downloads
Repository
Releases over time
Commits over time
2 development-tooling and community-health practices detected across 2 families in the upstream repository
Checks run against github.com/alexandreabbes/bsplinequantreg on 2026-10-21.
Dependencies
Installing BsplineQuantReg adds 14 packages (14 with compiled code, 17 MB of source tarballs). Heaviest: clarabel 5.7 MB, ECOSolveR 2.1 MB, Rcpp 1.8 MB.
Code & Tests
People & History
Pick two releases to compare their code metrics.
- 0.2.6Latest2026-10-22 · current release · diff ↗ ··
added 2 exports
SplineConstantQuant, SplinePolynQuant3 days in CRAN's queue
Listed in CRAN's incoming queue from 2026-10-19 18:02 to 2026-10-22 12:40 UTC, when it was published, in 12 readings. - 0.2.5
- 0.2.22026-07-28 · diff ↗ ·
added 5 exports
Bspline_base_deriv, Bsplinetopp, evalpp, makpp, test_karlin_simple - 0.2.1
- 0.2.02026-07-21 · diff ↗ ·
removed 5 exports
Spline_der_knots, apply_karlin_constraints, bspline_to_deriv_coeffs_pp, is_beta, package_versionadded 14 exports
SplineConstQuantRegBs1, SplineConstQuantRegBs2, SplineConstQuantRegBs4, SplineCubicQuant, SplineLinearQuant, SplineQuadraticQuant, SplineQuarticQuant, Spline_der_knot, bspline_to_deriv_coeffs_cubic, bspline_to_deriv_coeffs_lin, bspline_to_deriv_coeffs_quad, bspline_to_deriv_coeffs_quart, make_spline, quantile_spline - 0.1.0first seen 2026-06-23
- RR 4.6.0 released · 2026-04-24
Package metadata
- First seen
- 2026-06-23
- Total releases
- 6 / 1 yrs
- License
- GPL-3 OSI
- Minimum R
- ≥ 4.5.0
- Download size
- 1.1 MB
Cite
Cite this package
Run in R for the authors' entry:
citation("BsplineQuantReg")The package provides a citation file, so citation() returns the authors' own entry.
It points to 10.5281/zenodo.17427913.
Cite the R Observatory
For a number measured here: a download total, a coverage figure, an archival date.
From data release v2026-10-24, which the citation names so these numbers can be found later. More on citing and the projects behind them.