diff --git a/libraries/matrixlib.py b/libraries/matrixlib.py index 24a5a512..b3d5cc27 100644 --- a/libraries/matrixlib.py +++ b/libraries/matrixlib.py @@ -126,6 +126,11 @@ def elementwiseApply(m: list, f: callable) -> list: return [MatrixLib.elementwiseApply(list(_r), f) for _r in m] return [f(float(z)) for z in m] + def selectElements(m: list, f: callable) -> list: + if len(m) == 0: return [] + elif isinstance(m[0], list): return [MatrixLib.selectElements(list(_r), f) for _r in m] + else: return [float(z) for z in m if f(float(z))] + def elementwiseNot(m: list) -> list: if len(m) == 0: return []