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

Did you notice perfcurve is slow? This version of perfcurve is faster

You are now following this Submission

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 (2026). 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 .

General Information

MATLAB Release Compatibility

  • Compatible with any release

Platform Compatibility

  • Windows
  • macOS
  • Linux
Version Published Release Notes Action
1.0.0.0