def notes_roc(la, lb, eps): from numarray import transpose, add, resize """ creates a matrix of size len(la)*len(lb) then look for hit and miss in it within eps tolerance windows """ gdn, fpw, fpg, fpa, fdo, fdp = 0, 0, 0, 0, 0, 0 m = len(la) n = len(lb) x = resize(la[:][0], (n, m)) y = transpose(resize(lb[:][0], (m, n))) teps = (abs(x - y) <= eps[0]) x = resize(la[:][1], (n, m)) y = transpose(resize(lb[:][1], (m, n))) tpitc = (abs(x - y) <= eps[1]) res = teps * tpitc res = add.reduce(res, axis=0) for i in range(len(res)): if res[i] > 1: gdn += 1 fdo += res[i] - 1 elif res[i] == 1: gdn += 1 fpa = n - gdn - fpa return gdn, fpw, fpg, fpa, fdo, fdp
def notes_roc (la, lb, eps): from numarray import transpose, add, resize """ creates a matrix of size len(la)*len(lb) then look for hit and miss in it within eps tolerance windows """ gdn,fpw,fpg,fpa,fdo,fdp = 0,0,0,0,0,0 m = len(la) n = len(lb) x = resize(la[:][0],(n,m)) y = transpose(resize(lb[:][0],(m,n))) teps = (abs(x-y) <= eps[0]) x = resize(la[:][1],(n,m)) y = transpose(resize(lb[:][1],(m,n))) tpitc = (abs(x-y) <= eps[1]) res = teps * tpitc res = add.reduce(res,axis=0) for i in range(len(res)) : if res[i] > 1: gdn+=1 fdo+=res[i]-1 elif res [i] == 1: gdn+=1 fpa = n - gdn - fpa return gdn,fpw,fpg,fpa,fdo,fdp
def RMS(b): a = b.astype(Int32) multiply(a, a, a) ms = add.reduce(a)/len(a) rms = sqrt(ms) return rms