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