faster perfcurve (just in case you use FPR and TPR)

Did you notice perfcurve is slow? This version of perfcurve is faster
636 Downloads
Updated 10 Jun 2013

View License

This version is identical to the one provided by matlab with a small change if "FPR" or "TPR" are used for X and Y.
Instead of using the tedious "arrayfun" I used vector cumsum functions.

Here is a test for comparison
N = 1e5;
score = [rand(N,1); rand(N,1)-1];
label = [ones(N,1); zeros(N,1)];

tic;
perfcurve(label, score, 1);
toc
tic;
perfcurve2(label, score,1);
toc

Elapsed time is 17.614076 seconds.
Elapsed time is 0.164707 seconds.

I hope you will find it useful.

Cite As

Hanan Shteingart (2024). faster perfcurve (just in case you use FPR and TPR) (https://www.mathworks.com/matlabcentral/fileexchange/42154-faster-perfcurve-just-in-case-you-use-fpr-and-tpr), MATLAB Central File Exchange. Retrieved .

MATLAB Release Compatibility
Created with R2012b
Compatible with any release
Platform Compatibility
Windows macOS Linux
Categories
Find more on ROC - AUC in Help Center and MATLAB Answers

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!
Version Published Release Notes
1.0.0.0