From 100a20835a6cdb4207fcb687e2ba654807d60492 Mon Sep 17 00:00:00 2001 From: Tobias Schmidt <tobias.schmidt@unibas.ch> Date: Fri, 18 Nov 2011 14:28:49 +0100 Subject: [PATCH] fixed bug in ROC code in Table class --- modules/base/pymod/table.py | 15 +- modules/base/tests/test_table.py | 21 ++- modules/base/tests/testfiles/roc-same-val.png | Bin 25884 -> 26928 bytes modules/base/tests/testfiles/roc_table.dat | 152 ++++++++++++++++++ 4 files changed, 181 insertions(+), 7 deletions(-) create mode 100644 modules/base/tests/testfiles/roc_table.dat diff --git a/modules/base/pymod/table.py b/modules/base/pymod/table.py index 43a94db67..9338a1f5d 100644 --- a/modules/base/pymod/table.py +++ b/modules/base/pymod/table.py @@ -894,6 +894,9 @@ class Table: there are not enough data points to calculate a correlation coefficient, None is returned. """ + if IsStringLike(col1) and IsStringLike(col2): + col1 = self.GetColIndex(col1) + col2 = self.GetColIndex(col2) vals1, vals2=([],[]) for v1, v2 in zip(self[col1], self[col2]): if v1!=None and v2!=None: @@ -1203,6 +1206,12 @@ class Table: class_val = row[class_idx] score_val = row[score_idx] if class_val!=None: + if old_score_val==None: + old_score_val = score_val + if score_val!=old_score_val: + x.append(fp) + y.append(tp) + old_score_val = score_val if class_type=='bool': if class_val==True: tp += 1 @@ -1213,10 +1222,8 @@ class Table: tp += 1 else: fp += 1 - if score_val!=old_score_val: - x.append(fp) - y.append(tp) - old_score_val = score_val + x.append(fp) + y.append(tp) x = [float(v)/x[-1] for v in x] y = [float(v)/y[-1] for v in y] return x,y diff --git a/modules/base/tests/test_table.py b/modules/base/tests/test_table.py index f41418193..617f110dd 100644 --- a/modules/base/tests/test_table.py +++ b/modules/base/tests/test_table.py @@ -980,7 +980,7 @@ class TestTable(unittest.TestCase): self.CompareImages(img1, img2) #pl.show() - def testPlotROCSameValue(self): + def testPlotROCSameValues(self): if not HAS_MPL or not HAS_PIL: return tab = Table(['classific', 'score'], 'bf', @@ -1004,10 +1004,25 @@ class TestTable(unittest.TestCase): auc = tab.ComputeROCAUC(score_col='score', score_dir='+', class_col='classific') self.assertAlmostEquals(auc, auc_ref) - def testCalcROCAUCSameValue(self): + def testCalcROC(self): if not HAS_NUMPY: return - auc_ref = 0.66 + tab = Table(['classific', 'score'], 'ff', + classific=[0.9, 0.8, 0.7, 0.6, 0.55, 0.54, 0.53, 0.52, 0.51, 0.505, 0.4, 0.39, 0.38, 0.37, 0.36, 0.35, 0.34, 0.33, 0.30, 0.1], + score=[0.9, 0.8, 0.7, 0.6, 0.55, 0.54, 0.53, 0.52, 0.51, 0.505, 0.4, 0.39, 0.38, 0.37, 0.36, 0.35, 0.34, 0.33, 0.30, 0.1]) + auc = tab.ComputeROCAUC(score_col='score', class_col='classific', class_cutoff=0.5) + self.assertEquals(auc, 1.0) + + def testCalcROCFromFile(self): + tab = Table.Load(os.path.join('testfiles','roc_table.dat')) + auc = tab.ComputeROCAUC(score_col='prediction', class_col='reference', class_cutoff=0.4) + self.assertEquals(auc, 1.0) + + + def testCalcROCAUCSameValues(self): + if not HAS_NUMPY: + return + auc_ref = 0.685 tab = Table(['classific', 'score'], 'bf', classific=[True, True, False, True, True, True, False, False, True, False, True, False, True, False, False, False, True, False, True, False], score=[0.9, 0.8, 0.7, 0.7, 0.7, 0.7, 0.53, 0.52, 0.51, 0.505, 0.4, 0.4, 0.4, 0.4, 0.36, 0.35, 0.34, 0.33, 0.30, 0.1]) diff --git a/modules/base/tests/testfiles/roc-same-val.png b/modules/base/tests/testfiles/roc-same-val.png index 9599e26e92887cd2f97702c9e55c44dcef31557c..b459c553da696100743b9b41dc09e8dcbeaef5a3 100644 GIT binary patch literal 26928 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 literal 25884 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 TpIvnXO=o+$`njxgN@xNAg6yV> diff --git a/modules/base/tests/testfiles/roc_table.dat b/modules/base/tests/testfiles/roc_table.dat new file mode 100644 index 000000000..2de91a269 --- /dev/null +++ b/modules/base/tests/testfiles/roc_table.dat @@ -0,0 +1,152 @@ +rnum[int] reference[float] prediction[float] +1 0.0 0.0 +2 0.0 0.0 +3 0.0 0.0 +4 0.0 0.0 +5 0.2 0.2 +6 0.0 0.0 +7 0.0 0.0 +8 1.0 1.0 +9 0.2 0.2 +10 0.2 0.2 +11 0.2 0.2 +12 1.0 1.0 +13 0.0 0.0 +14 0.0 0.0 +15 0.0 0.0 +16 0.0 0.0 +17 0.0 0.0 +18 0.0 0.0 +19 0.0 0.0 +20 0.0 0.0 +21 0.0 0.0 +22 0.0 0.0 +23 0.0 0.0 +24 0.0 0.0 +25 0.0 0.0 +26 0.0 0.0 +27 0.0 0.0 +28 0.0 0.0 +29 0.0 0.0 +30 0.0 0.0 +31 0.0 0.0 +32 0.2 0.2 +33 0.0 0.0 +34 0.0 0.0 +35 0.0 0.0 +36 0.0 0.0 +37 0.0 0.0 +38 0.0 0.0 +39 0.0 0.0 +40 0.0 0.0 +41 0.0 0.0 +42 0.0 0.0 +43 0.0 0.0 +44 0.0 0.0 +45 0.0 0.0 +46 0.0 0.0 +47 0.0 0.0 +48 0.0 0.0 +49 0.0 0.0 +50 0.0 0.0 +51 0.0 0.0 +52 0.0 0.0 +53 0.0 0.0 +54 0.0 0.0 +55 0.0 0.0 +56 0.0 0.0 +57 0.0 0.0 +58 0.0 0.0 +59 0.0 0.0 +60 0.0 0.0 +61 0.0 0.0 +62 0.0 0.0 +63 0.0 0.0 +64 0.0 0.0 +65 0.0 0.0 +66 0.0 0.0 +67 0.0 0.0 +68 0.0 0.0 +69 0.0 0.0 +70 0.0 0.0 +71 0.2 0.2 +72 0.0 0.0 +73 0.2 0.2 +74 0.0 0.0 +75 0.0 0.0 +76 0.0 0.0 +77 0.0 0.0 +78 0.0 0.0 +79 0.0 0.0 +80 0.0 0.0 +81 0.0 0.0 +82 0.0 0.0 +83 0.0 0.0 +84 0.0 0.0 +85 0.0 0.0 +86 0.0 0.0 +87 0.0 0.0 +88 0.0 0.0 +89 0.0 0.0 +90 0.0 0.0 +91 0.2 0.2 +92 0.0 0.0 +93 0.0 0.0 +94 0.0 0.0 +95 0.0 0.0 +96 0.0 0.0 +97 0.0 0.0 +98 0.0 0.0 +99 0.0 0.0 +100 0.0 0.0 +101 0.0 0.0 +102 0.0 0.0 +103 0.2 0.2 +104 0.2 0.2 +105 0.5 0.5 +106 0.0 0.0 +107 0.0 0.0 +108 0.0 0.0 +109 0.0 0.0 +110 0.0 0.0 +111 0.2 0.2 +112 0.0 0.0 +113 0.5 0.5 +114 0.2 0.2 +115 1.0 1.0 +116 0.5 0.5 +117 0.5 0.5 +118 0.5 0.5 +119 1.0 1.0 +120 0.0 0.0 +121 0.0 0.0 +122 0.0 0.0 +123 0.0 0.0 +124 0.0 0.0 +125 0.0 0.0 +126 0.0 0.0 +127 0.0 0.0 +128 0.0 0.0 +129 0.0 0.0 +130 0.0 0.0 +131 0.0 0.0 +132 0.0 0.0 +133 0.0 0.0 +134 0.0 0.0 +135 0.0 0.0 +136 0.0 0.0 +137 0.0 0.0 +138 0.0 0.0 +139 0.0 0.0 +140 0.0 0.0 +141 0.0 0.0 +142 0.0 0.0 +143 0.0 0.0 +144 0.0 0.0 +145 0.0 0.0 +146 0.0 0.0 +147 0.0 0.0 +148 0.0 0.0 +149 0.0 0.0 +150 0.0 0.0 +151 0.0 0.0 -- GitLab