Mercurial Hosting > traffic-intelligence
comparison trafficintelligence/indicators.py @ 1265:0f5bebd62a55
minor modifications
author | Nicolas Saunier <nicolas.saunier@polymtl.ca> |
---|---|
date | Fri, 24 May 2024 16:15:38 -0400 |
parents | 56d0195d043e |
children | ad60e5adf084 |
comparison
equal
deleted
inserted
replaced
1264:dff5b678a33a | 1265:0f5bebd62a55 |
---|---|
183 values = sorted(values, reverse = self.mostSevereIsMax) # inverted if most severe is max -> take the first values | 183 values = sorted(values, reverse = self.mostSevereIsMax) # inverted if most severe is max -> take the first values |
184 return mean(values[:minNInstants]) | 184 return mean(values[:minNInstants]) |
185 else: | 185 else: |
186 return None | 186 return None |
187 | 187 |
188 def getInstantOfMostSevereValue(self): | 188 def getInstantOfMostSevereValue(self, minSevereValue = None): |
189 '''Returns the instant at which the indicator reaches its most severe value''' | 189 '''Returns the instant at which the indicator reaches its most severe value |
190 if self.mostSevereIsMax: | 190 or the instants when value is above minSevereValue (it not None)''' |
191 return max(self.values, key=self.values.get) | 191 if minSevereValue is None: |
192 else: | 192 if self.mostSevereIsMax: |
193 return min(self.values, key=self.values.get) | 193 return max(self.values, key=self.values.get) |
194 else: | |
195 return min(self.values, key=self.values.get) | |
196 else: | |
197 if self.mostSevereIsMax: | |
198 return [t for t in self.values if self.values[t] >= minSevereValue] | |
199 else: | |
200 return [t for t in self.values if self.values[t] <= minSevereValue] | |
194 | 201 |
195 # functions to aggregate discretized maps of indicators | 202 # functions to aggregate discretized maps of indicators |
196 # TODO add values in the cells between the positions (similar to discretizing vector graphics to bitmap) | 203 # TODO add values in the cells between the positions (similar to discretizing vector graphics to bitmap) |
197 | 204 |
198 def indicatorMap(indicatorValues, trajectory, squareSize): | 205 def indicatorMap(indicatorValues, trajectory, squareSize): |