pROC

Display and analyze ROC curves in R

Citation

If you use pROC in published research, please cite the following paper:

Xavier Robin, Natacha Turck, Alexandre Hainard, Natalia Tiberti, Frédérique Lisacek, Jean-Charles Sanchez and Markus Müller (2011). pROC: an open-source package for R and S+ to analyze and compare ROC curves. BMC Bioinformatics, 12, p. 77. DOI: 10.1186/1471-2105-12-77.

Description

An R package to visualize, smooth and compare receiver operating characteristic (ROC) curves with statistical tests and confidence intervals.

Version


News

Authors

Xavier Robin, Natacha Turck, Alexandre Hainard, Natalia Tiberti, Frédérique Lisacek, Jean-Charles Sanchez and Markus Müller

Contributors

Stefan Siegert, Matthias Doering, Zane Billings

License

GNU GPLv3

Finding help

Installation

There is no need to download the package. The installation can be done in one command directly from R:

install.packages("pROC")

The package must then be loaded with:

library(pROC)

To get help, enter the following in the R prompt:

?pROC

Update

You can update pROC by installing it again:

install.packages("pROC")

Or updates all your packages:

update.packages()

Version history

1.19.0.1 (2025-07-31)

1.19.0 (2025-07-30)

  • ci.coords can now take the same input values as coords (issue #90)
  • ci.coords can be plotted
  • Added "lr_pos" and "lr_neg" to coords (issue #102)
  • coords with partial.auc now interpolates bounds when needed
  • Added ignore.partial.auc argument to coords
  • Deprecated transpose, as.list, as.matrix and drop in coords
  • Deprecated the algorithm argument to roc and fun.sesp value
  • Deprecated the progress and parallel argument for bootstrap operations.
  • Removed dependencies on doParallel and retired package plyr (thanks to Michael Chirico, pr #134, #135, #136, #137, #138, #139 and #140).

1.18.5 (2023-07-04)

  • Fixed formula input when given as variable and combined with with (issue #111)
  • Fixed formula containing variables with spaces (issue #120)
  • Fixed broken grouping when colour argument was given in ggroc (issue #121)

1.18.4 (2023-07-04)

  • Fix broken legacy.axes in ggroc

1.18.3 (2023-07-02)

  • Fix warning about aes_string in ggroc
  • Improvements in tests (thanks to Michael Chirico, pr #114, #115)
  • Fix upcoming CRAN warning about numeric version comparisons

1.18.2 (2023-05-13)

1.18.1 (2023-05-07)

1.18.0 (2021-09-02)

  • Add CI of the estimate for roc.test (DeLong, paired only for now) (code contributed by Zane Billings) (pr #95)
  • Fix documentation and alternative hypothesis for Venkatraman test (issue #92)

1.17.0.1 (2021-01-07)

  • Fix CRAN incoming checks as requested by CRAN

1.17.0 (2020-12-29)

  • Accept more values in input of coords (issue #67)
  • Accept kappa for the power.roc.test of two ROC curves (issue #82)
  • The input argument to coords for smooth.roc curves no longer has a default
  • The x argument to coords for smooth.roc can now be set to all (also the default)
  • Fix bootstrap roc.test and cov with smooth.roc curves
  • The ggroc function can now plot smooth.roc curves (issue #86)
  • Remove warnings with warnPartialMatchDollar option (issue #87)
  • Make tests depending on vdiffr conditional (issue #88)

1.16.2 (2020-03-19)

  • Skip test depending on Rcpp version

1.16.1 (2020-01-13)

  • Skip timing-dependent test failing occasionally on CRAN

1.16.0 (2020-01-12)

  • BACKWARD INCOMPATIBLE CHANGE: transpose argument to coords switched to FALSE by default (issue #54)
  • BACKWARD INCOMPATIBLE CHANGE: ci.coords return value is now of list type and easier to use
  • Fix one-sided DeLong test for curves with direction=">" (issue #64)
  • Fix an error in ci.coords due to expected NA values in some coords (like "precision") (issue #65)
  • Ordrered predictors are converted to numeric in a more robust way (issue #63)
  • Cleaned up power.roc.test code (issue #50)
  • Fix pairing with roc.formula and warn if na.action is not set to "na.pass" or "na.fail" (issue #68)
  • Fix ci.coords not working with smooth.roc curves

References

S+

The pROC package initially supported S+ as well as R. However, TIBCO S+ no longer supports packages and discontinued the CSAN. As a result pROC is no longer supported for S+. The S+ installation page is provided for historical purpose only.