Mercurial > hg > nsaunier > traffic-intelligence
comparison trafficintelligence/ml.py @ 1033:8ffb3ae9f3d2
work in progress
| author | Nicolas Saunier <nicolas.saunier@polymtl.ca> |
|---|---|
| date | Wed, 20 Jun 2018 00:07:03 -0400 |
| parents | cc5cb04b04b0 |
| children | 75a6ad604cc5 |
comparison
equal
deleted
inserted
replaced
| 1032:d0e339359d8a | 1033:8ffb3ae9f3d2 |
|---|---|
| 208 if similarityFunc is None: | 208 if similarityFunc is None: |
| 209 print('similarityFunc is None') | 209 print('similarityFunc is None') |
| 210 return None | 210 return None |
| 211 | 211 |
| 212 # sort instances based on length | 212 # sort instances based on length |
| 213 indices = range(len(instances)) | 213 indices = list(range(len(instances))) |
| 214 if randomInitialization or optimizeCentroid: | 214 if randomInitialization or optimizeCentroid: |
| 215 indices = np.random.permutation(indices).tolist() | 215 indices = np.random.permutation(indices).tolist() |
| 216 else: | 216 else: |
| 217 def compare(i, j): | 217 def compare(i, j): |
| 218 if len(instances[i]) > len(instances[j]): | 218 if len(instances[i]) > len(instances[j]): |
| 219 return -1 | 219 return -1 |
| 220 elif len(instances[i]) == len(instances[j]): | 220 elif len(instances[i]) == len(instances[j]): |
| 221 return 0 | 221 return 0 |
| 222 else: | 222 else: |
| 223 return 1 | 223 return 1 |
| 224 indices.sort(compare) | 224 indices.sort(key=lambda i: len(instances[i])) |
| 225 # initialize clusters | 225 # initialize clusters |
| 226 clusters = [] | 226 clusters = [] |
| 227 if initialPrototypeIndices is None: | 227 if initialPrototypeIndices is None: |
| 228 prototypeIndices = [indices[0]] | 228 prototypeIndices = [indices[0]] |
| 229 else: | 229 else: |
