From 86cb6c8dd1876e44be44b2d221e7b9c771495d73 Mon Sep 17 00:00:00 2001 From: "patrick.lambert" <patrick.mh.lambert@inrae.fr> Date: Fri, 16 Apr 2021 19:02:29 +0200 Subject: [PATCH] add mean without NaN --- src/main/java/miscellaneous/QueueMemory.java | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/src/main/java/miscellaneous/QueueMemory.java b/src/main/java/miscellaneous/QueueMemory.java index 9acb461..2db9751 100644 --- a/src/main/java/miscellaneous/QueueMemory.java +++ b/src/main/java/miscellaneous/QueueMemory.java @@ -78,7 +78,7 @@ public class QueueMemory<E extends Number> extends ArrayBlockingQueue<E> { double sum = 0.; double total = 0.; for (E item : this) { - if (this.doubleValue(item) > 0.) { + if (this.doubleValue(item) != 0.) { sum += this.doubleValue(item); total++; } @@ -90,6 +90,23 @@ public class QueueMemory<E extends Number> extends ArrayBlockingQueue<E> { } + public double getMeanWithoutNaN() { + double sum = 0.; + double total = 0.; + for (E item : this) { + Double value = this.doubleValue(item); + if (!Double.isNaN(value)) { + sum += value; + total++; + } + } + if (total > 0) { + sum = sum / total; + } + return (sum); + } + + public double getGeometricMean() { double sum = 0.; for (E item : this) { -- GitLab