https://github.com/cran/cobs
Tip revision: b430645a112467bf07e8a94a3261fdcd3f0ff6df authored by Martin Maechler on 06 March 2024, 12:50:02 UTC
version 1.3-8
version 1.3-8
Tip revision: b430645
TODO
-*- org -*-
* Finally add Piet Groeneboom's contribution SR() !
** see convexreg-PietGr/convexregresnew/README_MM
** also ./src/Notes_SR
** -> convexreg-PietGr/RcodeConvex.R has an "R-only" version *and* "testing" code
** FIXME: do not use src/nrutils.c (and src/nrutils.h ): Numerical Recipes
----- copyright protected, not to be used in GPL
** merge the two; ask Piet Groeneboom about 'weights' for SR() :
** --> convexreg-PietGr/convexregres-PietGr.mail and more
* cobs()
- allow ic = <number> ==> something between AIC & BIC, or (ic = 1 :more
overfitting than AIC)
- For knot selection: allow setting final number of knots (after knot selection)
- predict.cobs() should have a 'deriv = 0' argument {as predict.smooth.spline()}
and deriv in {1,2,3} should work. This is closely related .splValue()
etc, see below.
- For the case 'lambda < 0' (i.e. search over several lambdas),
we can become *much* faster in matrix creation, since alle constraint
matrices are *not* dependent on lambda at all!
- allow constraint = c("increase", "convex") i.e., *BOTH* constraints!
- When determining optimal lambda (via 'ic'),
allow a "+ 1 S.E. - rule" instead of simply taking the arg_min
- ditto for knot selection
- Add details and examples (!) for the intermediate/ auxiliary functions
qsbks() and drqssbcs(), in man/qbsks.Rd & man/drqssbc.Rd
- need examples with degree = 1
and several other values of tau
also extreme cases of interpolation and global linear/quadratic
- want to have examples of all constraints, including "periodic"
and 'pointwise' (now done) and (periodic + pointwise) etc
- src/splines.c is UN-needed in R --- rather use library(splines) !!
------------- now have .Call(*) there instead of .C() here.
partly done: now use .splBasis() and .splValue() <<<<-- R/splines.R -->
--> tests/spline-ex.R shows how .splBasis() can be done via library(splines)
- lambda < 0; for each pp.lambda, instead of (only) $sic,
return both components : Log.lik. and p[lambda] ( = k[lambda] ), the dim.
* *Old TODOs* which are *done* (here for reference only, newest first):
- Use *,v files to produce "svn" version --> move to ~/R/D/R-forge/curves-etc/pkg/
(Done: 2012, Nov. 1)
- add the three interesting real data examples from the COBS "paper".
in the paper, they say that S-plus code for these examples is available
as well. --> see also ./inst/scripts/ and ./tests/
- example(cobs) gives lots of warnings;
the upper and lower quantiles are not plotted (not properly computed ??)
- man/cobs.Rd needs the current reference list !
- cobs() should keep its call and return an object of class "cobs".
Then print.cobs(), summary.cobs(), predict.cobs() and plot.cobs() should
be designed!
---> this is now done { --> old & original code in ./R/cobsOld.R }
- added some documentation for qsbks() and drqssbcs(): man/qbsks.Rd & man/drqssbc.Rd
- cobs() should get an 'keep.data = TRUE' argument as smooth.spline()