Benchmarking and Visualization Toolkit for Penalized Cox Models

Creates nomogram visualizations for penalized Cox regression models, with the support of reproducible survival model building, validation, calibration, and comparison for high-dimensional data.


Build Status AppVeyor Build Status CRAN Version Downloads from the RStudio CRAN mirror

hdnom creates nomogram visualizations for penalized Cox regression models, with the support of reproducible survival model building, validation, calibration, and comparison for high-dimensional data.

Paper Citation

Formatted citation for the preprint:

Nan Xiao, Qing-Song Xu, and Miao-Zhu Li. "hdnom: Building Nomograms for Penalized Cox Models with High-Dimensional Survival Data." bioRxiv (2016): 065524; doi: https://dx.doi.org/10.1101/065524

BibTeX entry:

@article {hdnompreprint2016,
  author = {Xiao, Nan and Xu, Qing-Song and Li, Miao-Zhu},
  title = {hdnom: Building Nomograms for Penalized Cox Models with High-Dimensional Survival Data},
  year = {2016},
  doi = {10.1101/065524},
  publisher = {Cold Spring Harbor Labs Journals},
  URL = {https://www.biorxiv.org/content/early/2016/08/23/065524},
  eprint = {https://www.biorxiv.org/content/biorxiv/early/2016/08/23/065524.full.pdf},
  journal = {bioRxiv}
}

Installation

To download and install hdnom from CRAN:

install.packages("hdnom")

Or try the development version on GitHub:

# install.packages("devtools")
devtools::install_github("road2stat/hdnom")

Browse the vignettes to start.

Gallery

Nomogram Visualization / Kaplan-Meier Plot with Number at Risk Table

hdnom-nomogram-kmplot

Model Validation / Model Calibration

hdnom-validation-calibration

Model Comparison via Validation / Calibration

hdnom-compare

Links

Contribute

To contribute to this project, please take a look at the Contributing Guidelines first. Please note that this project is released with a Contributor Code of Conduct. By participating in this project you agree to abide by its terms.

News

hdnom 5.0 (2018-05-13)

Improvements

  • Exported the survival curve prediction functions (glmnet.survcurve(), ncvreg.survcurve(), penalized.survcurve()) and Breslow baseline hazard estimator functions (glmnet.basesurv(), ncvreg.basesurv(), penalized.basesurv()).
  • New URL for the documentation website: https://nanx.me/hdnom/.

hdnom 4.9 (2017-09-28)

Improvements

  • Use system font stack instead of Google Fonts in vignettes to avoid pandoc SSL issue.

hdnom 4.8 (2017-03-25)

Improvements

  • Reduced example running time to less than 10s for hdnom.calibrate().

hdnom 4.7 (2017-03-24)

Improvements

  • Better code indentation style.
  • Reduced example running time for fused lasso.
  • Updated gallery images in README.md.
  • HTTPS enabled for the website.

hdnom 4.6 (2017-01-07)

Bug Fixes

  • Fixed issues in parameter tuning and cross-validation procedures for fused lasso models (afc49c9). The user-visible change is that two parameters lambda1 and lambda2 instead of a single "lambda" are now required to fit, validate, and calibrate fused lasso models.

Improvements

  • The argument lambda in hdnom.nomogram is no longer needed and has been deprecated.
  • Allow users to specify eps and max.iter for MCP and SCAD penalty related models. Setting the default values to be 1e-4 and 10000, which is consistent with ncvreg 3.8-0.

hdnom 4.5 (2016-12-24)

Bug Fixes

  • Fixed vanishing axis problem in Kaplan-Meier plot hdnom.kmplot() under ggplot2 2.2.0, which is caused by a previous workaround for a bug introduced in ggplot2 2.1.0.
  • Fixed potential convergence issues for examples under ncvreg >= 3.7-0 new convergence criterion, by increasing max.iter for ncvsurv to a substantially higher value (5e+4).
  • Fixed single lambda support issues in ncvsurv under ncvreg >= 3.7-0.

Improvements

  • Added Windows continuous integration using AppVeyor.
  • New website design for project website: consistent with the web application hdnom.io.

hdnom 4.0 (2016-07-05)

Improvements

  • More concrete examples for several functions.
  • Introduce argument ylim for plot.hdnom.validate(), plot.hdnom.external.validate(), and plot.hdnom.compare.validate() (#4).

hdnom 3.7 (2016-03-25)

Bug Fixes

  • Removed one redundant color from the lancet color palette.

hdnom 3.6 (2016-03-24)

New Features

  • Added 4 new color palettes (JCO, Lancet, NPG, AAAS) for all plots. See the vignette for details.

Bug Fixes

  • Fixed vanishing axis problem in Kaplan-Meier plot due to ggplot2 2.1.0 update.

Improvements

  • New CSS style for the HTML vignette.

hdnom 3.0 (2016-01-03)

New Features

Package

  • New function hdnom.compare.validate() for model comparison by validation
  • New function hdnom.compare.calibrate() for model comparison by calibration
  • New function hdnom.external.validate() for external validation
  • New function hdnom.external.calibrate() for external calibration
  • New predict and print methods for hdcox.model objects
  • New function hdnom.kmplot(): Kaplan-Meier analysis for risk groups using internal/external calibration results
  • New function hdnom.logrank(): Log-rank test for risk groups using internal/external calibration results

Web Application

  • The web application is substantially improved to reflect the new features
  • Record random seeds in the generated reports to improve reproducibility
  • Allow users to download the model objects for further exploration in R

Improvements

  • Improvements on random seed handling for internal validation and calibration
  • The vignette is extended to reflect the new features

Bug Fixes

  • Fixed an error in internal calibration which mistakenly used testing data when should use training data in computation

hdnom 2.1 (2015-10-26)

New Features

  • New documentation website.
  • New Shiny web application (http://hdnom.io).

Improvements

  • Added exception handling for null models in all hdcox.*() functions. Make examples compatible with ncvreg 3.5-0, which refined CV implementation for survival models and improved computation speed.

hdnom 2.0 (2015-09-15)

New Features

  • Support five more high-dimensional penalized Cox model types:

    • Fused lasso
    • MCP
    • Mnet
    • SCAD
    • Snet

hdnom 1.2 (2015-08-27)

Improvements

  • Reduced example running time for hdnom.validate(), hdnom.calibrate(), hdcox.aenet(), and hdcox.enet() by reducing resampling times.

hdnom 1.1 (2015-08-27)

Bug Fixes

  • Added argument parallel to hdcox.aenet() and hdcox.enet() to enable or disable the use of parallel parameter tuning.

hdnom 1.0 (2015-08-04)

New Features

  • Initial version
  • Nomograms for glmnet models
  • Validation for glmnet models
  • Calibration for glmnet models

Reference manual

It appears you don't have a PDF plugin for this browser. You can click here to download the reference manual.

install.packages("hdnom")

5.0 by Nan Xiao, 7 months ago


https://nanx.me/hdnom/, https://github.com/road2stat/hdnom, http://hdnom.io


Report a bug at https://github.com/road2stat/hdnom/issues


Browse source code at https://github.com/cran/hdnom


Authors: Nan Xiao [aut, cre] , Qing-Song Xu [aut] , Miao-Zhu Li [aut]


Documentation:   PDF Manual  


Task views: Survival Analysis


GPL-3 | file LICENSE license


Imports survival, glmnet, penalized, ncvreg, rms, foreach, survAUC, ggplot2, gridExtra

Suggests knitr, rmarkdown, doParallel, Hmisc, mice


See at CRAN