NEWS
cirls 0.4.0-6
Changes
checkCmat has been replaced by reduceCons a more comprehensive function to reduce constraints, removing redundant and underlying equality constraints. See ?reduceCons.
reduceCons can now be controlled from cirls.control.
- Changed default of
dim when constraining crossbases. Now defaults to var whatever the specification.
- Some changes to examples for better clarity.
Bug fixed
boundConstr.crossbasis was sometimes removing constraints.
- Bounds for constraints on crossbasis, were sometimes forced to 0 even when the initial bounds were different.
cirls 0.4.0-5
New feature
- Shape-constrained DLNM: methods dedicated to
crossbasis objects. Add constraints to the exposure-response association or on the lag-response association (for DLMs).
- New Constr method:
boundConstr to contraint the bounds of an association
- New parameter
range fhor shapeConstr: constrain subrange of x
Changes
- Some changes to the documentation for the
shapeConstr generic
Bug fixes
- Fixed how the terms are checked in the
constr formula
- Fixed issues with the
shapeConstr.strata method
cirls 0.4.0-4
- New
shapeConstr method for strata from dlnm
- New example on isotonic regression
- Some amendments to the help
cirls 0.4.0-3
- Slight improvement of the main help page and examples.
cirls 0.4.0-2
New features
- On attach message for the package.
- New package overview help page.
- Addition of three datasets
- New examples
checkCmat now contains switches to return the reduced Cmat and disable warning when redundant/equality constraints are found.
Changes
- Some improvement of help pages
cirls 0.4.0-1
Changes
- Some changes in internal functions streamlining the building of the constraint matrix and bounds. Should not impact the use apart from the odd error message.
checkCmat now returns reduced Cmat/lb/ub, and better identifies equality constraints.
cirls 0.4.0 (2025-09-12)
New features
- New method
shapeConstr to build constraint matrices for shape-constrained splines. Currently works with classes ns, bs (from package splines), ps and onebasis (from dlnm). Also includes a default method for more general bases.
- New function
zerosumConstr for constraint matrices for a zero sum such as used in compositional regression for instance.
- New function
edf to compute observed and expected degrees of freedom for a fitted cirls object.
- Method
logLik.cirls for AIC and BIC computation.
- New function
uncons to return the unconstrained model.
- Constraints can now be passed as a formula through a new argument called
constr.
- New function
buildCmat to build a constraint matrix using a model frame and a list of matrices or constraint formula (or both).
Changes
- Changed the default QP solver to
quadprog after some expriments.
- Added the argument
complete in inferential functions, to allow keeping or discarding aliased coefficients. Same interpretation as in vcov.lm.
vcov now allows returning the usual variance-covariance returned by vcov.glm when trunc = FALSE.
simu_coef renamed as simulCoef and now includes an argument to set the seed.
check_cmat has been renamed checkCmat. It also now returns logical vectors instead of vectors of indices
- Now the
Cmat, lb and ub used are not returned in the control object from the result of glm with cirls.fit.
- Now
lb and ub can be passed by term.
- The element
aic of a fitted cirls object is penalised by the number of active constraints.
Bug fixes
- Fixed issue with R matrix when there was less observations than variables.
- Fixed error from
solve.QP when there are large values in the response.
- Now
checkCmat also checks if there are "zero" constraints.
- Fixed a bug in
simulCoef. Now includes a switch to simulate under the constrained or unconstrained model.
simulCoef returns a NA matrix with a warning in the case of a saturated model.
cirls 0.3.0
New features
- Added
check_cmat and coef_simu to the list of exported functions as they can be useful for specific use cases.
- Added full documentation.
Bug fixes
- In
check_cmat, removed the call to limSolve::nnls() to be replaced by coneproj::coneB (also a NNLS solver) to reduce the number of dependencies.
cirls 0.2.1
New features
- Initialization of a short documentation for several functions.
Bug fixes
cirls.control now checks for constraint matrix irreducibility.
cirls.control is now exported.
- changed the function to determine redundant constraints in
check_cmat
- No warning message on row rank of
Cmat anymore
Cmat is now checked only when there are more than one row
cirls 0.2.0
New features
- Method vcov for cirls to compute corrected covariance matrices
- Method confint for cirls to compute feasible confidence intervals
- Added several QP solvers: quadprog (the original one), osqp and coneproj.
Changes
- A warning is now displayed when Cmat is not of full row rank
- vcov and confint return NA matrices if Cmat is not of full row rank
- Changed residual df computation to account for active constraints
- Replaced bvec by lb (lower bound) and ub (upper bound). Allows equality constraints.
- Added cirls class to glm output
Bug fixes
- cirls.fit has the same behaviour as glm.fit when model is singular: fill with NAs