Subject: CVS commit: pkgsrc/math/R-robustbase
From: Makoto Fujiwara
Date: 2023-08-11 07:23:11
Message id: 20230811052311.D2B76FBDB@cvs.NetBSD.org

Log Message:
(math/R-robustness) Updated 0.95.1 to 0.99.0

CHANGES in robustbase VERSION 0.99-0 (2023-06-12, svn r928):

  NEW FEATURES:

         * In case it finds an _exact fit_, i.e., k > n/2 residuals are
           (practically) zero, 'lmrob.S()' now returns that, 'scale =
           0', and robustness weights 'weights(., "robustness")' which
           are either 0 or 1 quickly and more consistently.

           This is _not yet_ satisfactorily working for the "large n"
           case.

           **** *TODO*: Optionally (but off by default?? for back
           compatibility??), 'lmrob()' initialized by such an exact-fit
           estimator may use a (user-specified or automatic) scale s^ >
           0 to continue providing efficient SM / MM estimates.

         * 'lmrob.control()' gets class '"lmrobCtrl"' which can be
           'print()'ed and 'update()'d.

         * New tuning const 'zero.scale = 1e-10' instead of hardwired
           'EPS_ZERO' in 'lmrob.S()''s C code; additionally the exact
           fit / zero-residuals checking is finally y-scale
           equivariant, using 1/n ||y||_1 = 'mean(abs(y))'.

  BUG FIXES:

         * Fixed 'covMcd()': corrected the consistency correction
           factor for the reweighted estimate: was MCDCons(p,
           sum(w)/n), now is MCDCons(p, 0.975), see Croux and
           Haesbroeck (1999).

           Consequently, often 'covMcd()' and estimates based on it,
           such as 'BYlogreg()' or 'ltsReg()' are slightly changed.

         * registered 'residuals.lmrob.S' _and_ changed 'formals'
           compatible with generic to '(object, ...)'.

         * 'lmrob.S()' in C level 'refine_fast_s()' no longer modifies
           'beta_cand[]' which notably fixes a bug found in exact-fit
           examples previously resulting in 'coef() == 0' "results",
           also for 'lmrob()' which calls 'lmrob.S()' for its default
           initial estimate.

         * 'print(<lmrob.S>)' finally works again as intended (_not_
           printing a largish list); mostly by fixing internal
           'lmrob.control.minimal()'.

         * 'summary.lmrob(obj)' now also gets a 'weights' component
           from 'obj' if that is non-trivial; this may also correct
           'summary()' output in weighted cases.

         * Minor fixes in 'plot.lts()' related to par mfrow.

         * ltsReg() Help file changed - the note strongly advising NOT
           to use LTS regression removed.

  Misc:

         * argument 'mf' e.g., in 'lmrob.fit()' has been deprecated
           since 2017-12-09 and is defunct now.

         * 'lmrob()' tweaks, notably saying more for 'trace.lev >= 3'.

         * replaceed (almost) all 'Calloc()' by 'R_alloc()' in C code;
           e.g., prevents leakage from user interrupt.

Files:
RevisionActionfile
1.5modifypkgsrc/math/R-robustbase/Makefile
1.7modifypkgsrc/math/R-robustbase/distinfo