Advertisement
Guest User

Untitled

a guest
Feb 28th, 2017
76
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
MatLab 0.77 KB | None | 0 0
  1. fpr = [];
  2. mcc = [];
  3. numSamples = length(scores);
  4. conditionPositive = sum(labels(:));
  5. conditionNegative = numSamples - conditionPositive;
  6.  
  7. for tmpThreshold = linspace(0,1,100)
  8.    
  9.     tmpScores = scores > tmpThreshold;
  10.     predictedPositive = sum(tmpScores);
  11.     predictedNegative = numSamples - predictedPositive;
  12.     MCCDenominator = sqrt(conditionPositive*conditionNegative*predictedPositive*predictedNegative);
  13.    
  14.     tp = sum(tmpScores & labels);
  15.     fn = conditionPositive - tp;
  16.     fp = predictedPositive - tp;
  17.     tn = conditionNegative - fp;
  18.    
  19.     tmpFpr = fp/conditionNegative;
  20.     tmpMCC = tp*tn - fp*fn;
  21.     if(MCCDenominator ~= 0)
  22.         tmpMCC = tmpMCC / MCCDenominator;
  23.     end
  24.    
  25.     fpr = [fpr; tmpFpr];
  26.     mcc = [mcc; tmpMCC];
  27.    
  28. end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement