[R-pkgs] Major Update to rms package

Frank Harrell f.harrell at Vanderbilt.Edu
Thu Jul 11 14:33:28 CEST 2013

The rms ("Regression Modeling Strategies") package has undergone a 
massive update.  The entire list of updates is at the bottom of this 
note.  CRAN has the update for linux and will soon have it for Windows 
and Mac - check http://cran.r-project.org/web/packages/rms/ for 
availability.  This rms update relies on a major update of the Hmisc 

The most user-visible changes are:
   * Addition of a major new modeling function orm ("ordinal regression 
model") that supports 5 distribution families (one being the logistic, 
for proportional odds models) and is meant for continuous Y.  Sparse 
matrix operations (helped greatly by the SparseM package) allows 
thousands of intercepts to be fitted when there are thousands of unique 
Y values.  New function generators Mean, Quantile, and ExProb 
(exceedance probability distribution) have been added.  A detailed case 
study is in http://biostat.mc.vanderbilt.edu/CourseBios330 Chapter 15. 
Ordinal regression is now a direct competitor to linear models, and far 
more robust, even allowing spikes in the distribution of Y.
    * More generality and ease of obtaining bootstrap confidence limits 
for all estimands (predictions, contrasts).  The basic bootstrap is now 
implemented and tends to work better than the percentile bootstrap in 
terms of confidence coverage.
    * Change of Surv to Srv
    * Added tk/tcl progress bars for bootstrap and other repeated 
calculations.  This can be turned off by specifying 
options(showprogress=FALSE) or options(showprogress='console') to use 
cat().  Use options(showevery=50) to update the progress bar only every 
50 iterations.
    * Made all design matrices stored in model fits exclude any 
intercepts, with columns of ones added as needed with Predict() etc.
    * Dxy and c-index are now calculated with Therneau's survival 
package survConcordance functions which is blazing fast so can be used 
routinely in all model validations that used Dxy
    * plot.summary.rms now produces cleaner output with fewer confidence 
    * Several bug corrections


Changes in version 4.0-0 (2013-07-10)
    * Cleaned up label logic in Surv, made it work with interval2 
(thanks:Chris Andrews)
    * Fixed bug in val.prob - wrong denominator for Brier score if obs 
removed for logistic calibration
    * Fixed inconsistency in predictrms where predict() for Cox models 
used a design matrix that was centered on medians and modes rather than 
means (thanks: David van Klaveren <d.vanklaveren.1 at erasmusmc.nl>)
    * Added mean absolute prediction error to Rq output
    * Made pr argument passed to predab.resample more encompassing
    * Fixed logLik method for ols
    * Made contrast.rms and summary.rms automatically compute bootstrap 
nonparametric confidence limits if fit was run through bootcov
    * Fixed bug in Predict where conf.type='simultaneous' was being 
ignored if bootstrap coefficients were present
    * For plot.Predict made default gray scale shaded confidence bands 
    * For bootcov exposed eps argument to fitters and default to lower value
    * Fixed bug in plot.pentrace regarding effective.df plotting
    * Added setPb function for pop-up progress bars for simulations; 
turn off using options(showprogress=FALSE) or 
    * Added progress bars for predab.resample (for validate, calibrate) 
and bootcov
    * Added bootBCa function
    * Added seed to bootcov object
    * Added boot.type='bca' to Predict, contrast.rms, summary.rms
    * Improved summary.rms to use t critical values if df.residual defined
    * Added simultaneous contrasts to summary.rms
    * Fixed calculation of Brier score, g, gp in lrm.fit by handling 
special case of computing linear predictor when there are no predictors 
in the model
    * Fixed bug in prModFit preventing successful latex'ing of penalized 
    * Removed \synopsis from two Rd files
    * Added prmodsel argument to predab.resample
    * Correct Rd files to change Design to rms
    * Restricted NAMESPACE to functions expected to be called by users
    * Improved Fortran code to use better dimensions for array declarations
    * Added the basic bootstrap for confidence limits for bootBCa, 
contrast, Predict, summary
    * Fixed bug in latex.pphsm, neatened pphsm code
    * Neatened code in rms.s
    * Improved code for bootstrapping ranks of variables in anova.rms 
help file
    * Fixed bug in Function.rms - undefined Nam[[i]] if strat.  Thanks: 
douglaswilkins at yahoo.com
    * Made quantreg be loaded at end of search list in Rq so it doesn't 
override latex generic in Hmisc
    * Improved plot.summary.rms to use blue of varying transparency 
instead of polygons to show confidence intervals, and to use only three 
confidence levels by default: 0.9 0.95 0.99
    * Changed Surv to Srv; use of Surv in fitting functions will result 
in lack of time labels and assumption of Day as time unit; no longer 
override Surv in survival
    * Changed calculation of Dxy (and c-index) to use survival package 
survConcordance service function when analyzing (censored) survival 
time; very fast
    * Changed default dxy to TRUE in validate.cph, validate.psm
    * Dxy is now negated if correlating Cox model log relative hazard 
with survival time
    * Removed dxy argument from validate.bj as it always computed
    * Added Dxy to standard output of cph, psm
    * Added help file for Srv
    * Removed reference to ps.slide from survplot help page
    * Added the general ordinal regression fitting function orm (and 
orm.fit) which efficiently handles thousands of intercepts because of 
sparse matrix representation of the information matrix; implements 5 
distribution families
    * Added associated functions print.orm, vcov.orm, predict.orm, 
Mean.orm, Quantile.orm, latex.orm, validate.orm
    * Changed predab.resample to allow number of intercepts from 
resample to resample
    * Fixed bug in Mean.cph (thanks: Komal Kapoor <komal.bitsgoa at gmail.com>)
    * Removed incl.non.slopes and non.slopes arguments from all predict 
    * Changed all functions to expect predict(..., type='x') to not 
return intercept columns, and all fitting functions to not store column 
of ones if x=TRUE
    * Changed nomogram argument intercept to kint, used default as 
    * Made bootcov behave in a special way for orm, to use linear 
interpolation to select a single intercept targeted at median Y
    * Revamped all of rms to never store intercepts in design matrices 
in fit objects and to add intercepts on demand inside predictrms
    * Added new function generator ExProb to compute exceedance 
probabilities from orm fits

Frank E Harrell Jr Professor and Chairman      School of Medicine
                    Department of Biostatistics Vanderbilt University

More information about the R-packages mailing list