def append(self, datetime: LocalizedDatetime, sample: PathDict): # initialise... if not self.__initialised: for node in self.__nodes: try: paths = sample.paths(node) except KeyError: continue except IndexError as ex: paths = None print("sample_aggregate: %s: IndexError: %s" % (node, ex), file=sys.stderr) sys.stderr.flush() exit(1) for path in paths: if path == 'rec': continue self.__precisions[path] = Precision() self.__regressions[path] = LinearRegression() if Datum.is_numeric(sample.node(path)) else \ CategoricalRegression() self.__initialised = True # values... for path in self.__precisions.keys(): try: value = sample.node(path) except KeyError: continue if value is None: continue try: self.__precisions[path].widen(value) self.__regressions[path].append(datetime, value) except InvalidOperation: continue
#!/usr/bin/env python3 """ Created on 29 Nov 2018 @author: Bruno Beloff ([email protected]) """ from scs_core.data.datum import Datum # -------------------------------------------------------------------------------------------------------------------- value = None precision = Datum.precision(value) print("value:%s precision:%s" % (value, precision)) print("is_numeric:%s is_int:%s is_float:%s" % (Datum.is_numeric(value), Datum.is_int(value), Datum.is_float(value))) print("-") value = "hello" precision = Datum.precision(value) print("value:%s precision:%s" % (value, precision)) print("is_numeric:%s is_int:%s is_float:%s" % (Datum.is_numeric(value), Datum.is_int(value), Datum.is_float(value))) print("-") value = 1 precision = Datum.precision(value) print("value:%s precision:%s" % (value, precision)) print("is_numeric:%s is_int:%s is_float:%s" % (Datum.is_numeric(value), Datum.is_int(value), Datum.is_float(value)))