]> Piment Noir Git Repositories - e-mobility-charging-stations-simulator.git/commitdiff
fix: inputs gards logic in percentile()
authorJérôme Benoit <jerome.benoit@sap.com>
Tue, 12 Aug 2025 22:06:14 +0000 (00:06 +0200)
committerJérôme Benoit <jerome.benoit@sap.com>
Tue, 12 Aug 2025 22:06:14 +0000 (00:06 +0200)
Signed-off-by: Jérôme Benoit <jerome.benoit@sap.com>
src/utils/StatisticUtils.ts

index 2c65759a62926fae7cdef1a1a7fba680fbe4d620..7ade29c10387d602cac0a2bbdf2c9d815a812898 100644 (file)
@@ -29,7 +29,7 @@ export const max = (...args: number[]): number =>
 
 // TODO: use order statistics tree https://en.wikipedia.org/wiki/Order_statistic_tree
 export const percentile = (dataSet: number[], percentile: number): number => {
-  if (percentile < 0 && percentile > 100) {
+  if (percentile < 0 || percentile > 100) {
     throw new RangeError('Percentile is not between 0 and 100')
   }
   if (Array.isArray(dataSet) && dataSet.length === 0) {
@@ -63,7 +63,7 @@ export const percentile = (dataSet: number[], percentile: number): number => {
  * @internal
  */
 export const std = (dataSet: number[], dataSetAverage: number = average(dataSet)): number => {
-  if (Array.isArray(dataSet) && (dataSet.length === 0 || dataSet.length === 1)) {
+  if (Array.isArray(dataSet) && dataSet.length <= 1) {
     return 0
   }
   return Math.sqrt(