Mercurial > hg > nsaunier > traffic-intelligence
comparison python/utils.py @ 323:efd4dd4665ac
corrected issues with large deltas
| author | Nicolas Saunier <nicolas.saunier@polymtl.ca> |
|---|---|
| date | Wed, 08 May 2013 00:19:28 +0200 |
| parents | 28661c5887d3 |
| children | 99ca91a46007 |
comparison
equal
deleted
inserted
replaced
| 322:28661c5887d3 | 323:efd4dd4665ac |
|---|---|
| 208 else: | 208 else: |
| 209 l1 = _l1 | 209 l1 = _l1 |
| 210 l2 = _l2 | 210 l2 = _l2 |
| 211 n1 = len(l1) | 211 n1 = len(l1) |
| 212 n2 = len(l2) | 212 n2 = len(l2) |
| 213 # for i in xrange(delta, n1+n2-delta): # i is the alignment of the end of l1 in l2 | 213 # for i in xrange(min(delta,n1), max(n1+n2-delta, n2+1)): # i is the alignment of the end of l1 in l2 |
| 214 # print l1[min(-i-1,n1):] # min(n1+n2-i,n1) | 214 # print l1[min(-i-1,n1):] # min(n1+n2-i,n1) |
| 215 # print l2[max(0,i-n1):] | 215 # print l2[max(0,i-n1):] |
| 216 # print LCSS(l1[min(-i-1,n1):], l2[max(0,i-n1):], threshold, distance, delta) | 216 # print LCSS(l1[min(-i-1,n1):], l2[max(0,i-n1):], threshold, distance, delta) |
| 217 lcss = [LCSS(l1[min(-i-1,n1):], l2[max(0,i-n1):], threshold, distance, delta) for i in xrange(delta, n1+n2-delta)] | 217 lcss = [LCSS(l1[min(-i-1,n1):], l2[max(0,i-n1):], threshold, distance, delta) for i in xrange(min(delta,n1), max(n1+n2-delta, n2+1))] |
| 218 return max(lcss) | 218 return max(lcss) |
| 219 | 219 |
| 220 def normalizedAlignedLCSS(l1, l2, threshold, distance, delta, lengthMethod = min): | 220 def normalizedAlignedLCSS(l1, l2, threshold, distance, delta, lengthMethod = min): |
| 221 return float(alignedLCSS(l1, l2, threshold, distance, delta))/lengthMethod(len(l1), len(l2)) | 221 return float(alignedLCSS(l1, l2, threshold, distance, delta))/lengthMethod(len(l1), len(l2)) |
| 222 | 222 |
