Mercurial Hosting > traffic-intelligence
comparison python/moving.py @ 66:56fe4ef1377e
generalized map combination to different functions
author | Nicolas Saunier <nicolas.saunier@polymtl.ca> |
---|---|
date | Sun, 07 Nov 2010 01:34:43 -0500 |
parents | 75cf537b8d88 |
children | ded58c424783 |
comparison
equal
deleted
inserted
replaced
65:75cf537b8d88 | 66:56fe4ef1377e |
---|---|
405 indicatorMap[(i,j)] = [indicatorValues[k]] | 405 indicatorMap[(i,j)] = [indicatorValues[k]] |
406 for k in indicatorMap.keys(): | 406 for k in indicatorMap.keys(): |
407 indicatorMap[k] = mean(indicatorMap[k]) | 407 indicatorMap[k] = mean(indicatorMap[k]) |
408 return indicatorMap | 408 return indicatorMap |
409 | 409 |
410 def combineIndicatorMaps(maps, squareSize): | 410 def combineIndicatorMaps(maps, squareSize, combinationFunction): |
411 '''Puts many indicator maps together | 411 '''Puts many indicator maps together |
412 (averaging the values in each cell | 412 (averaging the values in each cell |
413 if more than one maps has a value)''' | 413 if more than one maps has a value)''' |
414 from numpy import mean | 414 #from numpy import mean |
415 indicatorMap = {} | 415 indicatorMap = {} |
416 for m in maps: | 416 for m in maps: |
417 for k,v in m.iteritems(): | 417 for k,v in m.iteritems(): |
418 if indicatorMap.has_key(k): | 418 if indicatorMap.has_key(k): |
419 indicatorMap[k].append(v) | 419 indicatorMap[k].append(v) |
420 else: | 420 else: |
421 indicatorMap[k] = [v] | 421 indicatorMap[k] = [v] |
422 for k in indicatorMap.keys(): | 422 for k in indicatorMap.keys(): |
423 indicatorMap[k] = mean(indicatorMap[k]) | 423 indicatorMap[k] = combinationFunction(indicatorMap[k]) |
424 return indicatorMap | 424 return indicatorMap |
425 | 425 |
426 if __name__ == "__main__": | 426 if __name__ == "__main__": |
427 import doctest | 427 import doctest |
428 import unittest | 428 import unittest |