Merge pull request #858 from SAP/combined-prs-branch
[e-mobility-charging-stations-simulator.git] / src / utils / StatisticUtils.ts
index 3f587caaaf46c753d080b1cccc13fab131dacaba..f0bd1f28bbc789500e3b0ae41c966dbf9f3ac241 100644 (file)
@@ -64,11 +64,12 @@ export const nthPercentile = (dataSet: number[], percentile: number): number =>
   return sortedDataSet[percentileIndexInteger];
 };
 
-export const stdDeviation = (dataSet: number[], dataSetAverage?: number): number => {
-  dataSetAverage = dataSetAverage ?? average(dataSet);
-  const geometricDeviation = dataSet.reduce((accumulator, nb) => {
-    const deviation = nb - dataSetAverage!;
-    return accumulator + deviation * deviation;
-  }, 0);
-  return Math.sqrt(geometricDeviation / dataSet.length);
+export const stdDeviation = (
+  dataSet: number[],
+  dataSetAverage: number = average(dataSet),
+): number => {
+  return Math.sqrt(
+    dataSet.reduce((accumulator, num) => accumulator + Math.pow(num - dataSetAverage, 2), 0) /
+      dataSet.length,
+  );
 };