From e74dcb6f67c355f29282b310ef2b6b2c80724748 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adri=C3=A1n=20Bernardi?= Date: Tue, 14 Jun 2022 20:27:35 -0300 Subject: [PATCH] lims_interface: fix INTERCEPT and RSQ functions --- lims_interface/function.py | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/lims_interface/function.py b/lims_interface/function.py index 78ad973..af01c78 100644 --- a/lims_interface/function.py +++ b/lims_interface/function.py @@ -78,8 +78,11 @@ custom_functions['SLOPE'] = slope def intercept(y, x): - if not y or not x: + if any(val is None for y1 in y for val in y1): return None + if any(val is None for x1 in x for val in x1): + return None + y, x = y[0].astype(float), x[0].astype(float) def _mean(l): return sum(l) / len(l) @@ -97,8 +100,11 @@ custom_functions['INTERCEPT'] = intercept def rsq(y, x): - if not y or not x: + if any(val is None for y1 in y for val in y1): return None + if any(val is None for x1 in x for val in x1): + return None + y, x = y[0].astype(float), x[0].astype(float) zx = (x - np.mean(x)) / np.std(x, ddof=1) zy = (y - np.mean(y)) / np.std(y, ddof=1) r = np.sum(zx * zy) / (len(x) - 1)