diff --git a/docs/build/doctrees/environment.pickle b/docs/build/doctrees/environment.pickle index 1a0e74f..da696ee 100644 Binary files a/docs/build/doctrees/environment.pickle and b/docs/build/doctrees/environment.pickle differ diff --git a/docs/build/doctrees/pyFTS.common.doctree b/docs/build/doctrees/pyFTS.common.doctree index c2780e4..8fad2c8 100644 Binary files a/docs/build/doctrees/pyFTS.common.doctree and b/docs/build/doctrees/pyFTS.common.doctree differ diff --git a/docs/build/doctrees/pyFTS.models.multivariate.doctree b/docs/build/doctrees/pyFTS.models.multivariate.doctree index bb8bf09..aee6cbb 100644 Binary files a/docs/build/doctrees/pyFTS.models.multivariate.doctree and b/docs/build/doctrees/pyFTS.models.multivariate.doctree differ diff --git a/docs/build/doctrees/pyFTS.models.seasonal.doctree b/docs/build/doctrees/pyFTS.models.seasonal.doctree index f39997e..0489a14 100644 Binary files a/docs/build/doctrees/pyFTS.models.seasonal.doctree and b/docs/build/doctrees/pyFTS.models.seasonal.doctree differ diff --git a/docs/build/doctrees/pyFTS.partitioners.doctree b/docs/build/doctrees/pyFTS.partitioners.doctree index b34e2a2..85a7655 100644 Binary files a/docs/build/doctrees/pyFTS.partitioners.doctree and b/docs/build/doctrees/pyFTS.partitioners.doctree differ diff --git a/docs/build/html/_modules/index.html b/docs/build/html/_modules/index.html index f392560..5cb4b33 100644 --- a/docs/build/html/_modules/index.html +++ b/docs/build/html/_modules/index.html @@ -127,6 +127,8 @@
  • pyFTS.models.multivariate.cmvfts
  • pyFTS.models.multivariate.common
  • pyFTS.models.multivariate.flrg
  • +
  • pyFTS.models.multivariate.granular
  • +
  • pyFTS.models.multivariate.grid
  • pyFTS.models.multivariate.mvfts
  • pyFTS.models.multivariate.variable
  • pyFTS.models.multivariate.wmvfts
  • diff --git a/docs/build/html/_modules/pyFTS/common/FuzzySet.html b/docs/build/html/_modules/pyFTS/common/FuzzySet.html index ae6cf0b..2fea767 100644 --- a/docs/build/html/_modules/pyFTS/common/FuzzySet.html +++ b/docs/build/html/_modules/pyFTS/common/FuzzySet.html @@ -81,6 +81,7 @@ """ Fuzzy Set """ + def __init__(self, name, mf, parameters, centroid, alpha=1.0, **kwargs): """ Create a Fuzzy Set @@ -97,15 +98,15 @@ """The alpha cut value""" self.type = kwargs.get('type', 'common') """The fuzzy set type (common, composite, nonstationary, etc)""" - self.variable = kwargs.get('variable',None) + self.variable = kwargs.get('variable', None) """In multivariate time series, indicate for which variable this fuzzy set belogs""" self.Z = None """Partition function in respect to the membership function""" if parameters is not None: if self.mf == Membership.gaussmf: - self.lower = parameters[0] - parameters[1]*3 - self.upper = parameters[0] + parameters[1]*3 + self.lower = parameters[0] - parameters[1] * 3 + self.upper = parameters[0] + parameters[1] * 3 elif self.mf == Membership.sigmf: k = (parameters[1] / (2 * parameters[0])) self.lower = parameters[1] - k @@ -135,7 +136,7 @@ """ return self.mf(self.transform(x), self.parameters) * self.alpha -
    [docs] def partition_function(self,uod=None, nbins=100): +
    [docs] def partition_function(self, uod=None, nbins=100): """ Calculate the partition function over the membership function. @@ -175,7 +176,7 @@ fs2 = ordered_sets[midpoint + 1] if midpoint < max_len else ordered_sets[max_len] if fuzzy_sets[fs1].centroid <= fuzzy_sets[fs].transform(x) <= fuzzy_sets[fs2].centroid: - return (midpoint-1, midpoint, midpoint+1) + return (midpoint - 1, midpoint, midpoint + 1) elif midpoint <= 1: return [0] elif midpoint >= max_len: @@ -194,13 +195,12 @@ :param data: input value to be fuzzyfied :param partitioner: a trained pyFTS.partitioners.Partitioner object :param kwargs: dict, optional arguments - :keyword alpha_cut: the minimal membership value to be considered on fuzzyfication (only for mode='sets') :keyword method: the fuzzyfication method (fuzzy: all fuzzy memberships, maximum: only the maximum membership) :keyword mode: the fuzzyfication mode (sets: return the fuzzy sets names, vector: return a vector with the membership values for all fuzzy sets, both: return a list with tuples (fuzzy set, membership value) ) - :returns a list with the fuzzyfied values, depending on the mode + """ alpha_cut = kwargs.get('alpha_cut', 0.) mode = kwargs.get('mode', 'sets') @@ -369,6 +369,7 @@ else: return data
    +
    [docs]def check_bounds(data, fuzzy_sets, ordered_sets): if data < fuzzy_sets[ordered_sets[0]].lower: return fuzzy_sets[ordered_sets[0]] diff --git a/docs/build/html/_modules/pyFTS/common/fts.html b/docs/build/html/_modules/pyFTS/common/fts.html index ae79ca3..2a27d6d 100644 --- a/docs/build/html/_modules/pyFTS/common/fts.html +++ b/docs/build/html/_modules/pyFTS/common/fts.html @@ -145,6 +145,8 @@ self.max_lag = self.order """A integer indicating the largest lag used by the model. This value also indicates the minimum number of past lags needed to forecast a single step ahead""" + self.log = pd.DataFrame([],columns=["Datetime","Operation","Value"]) + """"""
    [docs] def fuzzy(self, data): """ @@ -222,7 +224,7 @@ elif type == 'distribution': ret = self.forecast_ahead_distribution(ndata, steps_ahead, **kwargs) elif type == 'multivariate': - ret = self.forecast_ahead_multivariate(ndata, **kwargs) + ret = self.forecast_ahead_multivariate(ndata, steps_ahead, **kwargs) if not ['point', 'interval', 'distribution', 'multivariate'].__contains__(type): raise ValueError('The argument \'type\' has an unknown value.') @@ -630,7 +632,10 @@ """ for flrg in self.flrgs.keys(): - self.flrgs[flrg].reset_calculated_values()
    + self.flrgs[flrg].reset_calculated_values()
    + +
    [docs] def append_log(self,operation, value): + pass
    diff --git a/docs/build/html/_modules/pyFTS/models/chen.html b/docs/build/html/_modules/pyFTS/models/chen.html index 7fc1d9b..7c735d8 100644 --- a/docs/build/html/_modules/pyFTS/models/chen.html +++ b/docs/build/html/_modules/pyFTS/models/chen.html @@ -124,7 +124,7 @@
    [docs] def train(self, data, **kwargs): - tmpdata = FuzzySet.fuzzyfy(data, partitioner=self.partitioner, method='maximum', mode='sets') + tmpdata = self.partitioner.fuzzyfy(data, method='maximum', mode='sets') flrs = FLR.generate_non_recurrent_flrs(tmpdata) self.generate_flrg(flrs)
    diff --git a/docs/build/html/_modules/pyFTS/models/hofts.html b/docs/build/html/_modules/pyFTS/models/hofts.html index 28585bb..f1797e9 100644 --- a/docs/build/html/_modules/pyFTS/models/hofts.html +++ b/docs/build/html/_modules/pyFTS/models/hofts.html @@ -200,6 +200,9 @@ nsample = [self.partitioner.fuzzyfy(k, mode="sets", alpha_cut=self.alpha_cut) for k in sample] + if explain: + self.append_log("Fuzzyfication","{} -> {}".format(sample, nsample)) + return self.generate_lhs_flrg_fuzzyfied(nsample, explain)
    [docs] def generate_lhs_flrg_fuzzyfied(self, sample, explain=False): @@ -211,7 +214,7 @@ lags.append(lhs) if explain: - print("\t (Lag {}) {} -> {} \n".format(o, sample[o-1], lhs)) + self.append_log("Ordering Lags", "Lag {} Value {}".format(o, lhs)) # Trace the possible paths for path in product(*lags): @@ -291,17 +294,11 @@ sample = ndata[k - self.max_lag: k] - if explain: - print("Fuzzyfication \n") - if not fuzzyfied: flrgs = self.generate_lhs_flrg(sample, explain) else: flrgs = self.generate_lhs_flrg_fuzzyfied(sample, explain) - if explain: - print("Rules:\n") - midpoints = [] memberships = [] for flrg in flrgs: @@ -314,7 +311,7 @@ memberships.append(mv) if explain: - print("\t {} -> {} (Naïve)\t Midpoint: {}\n".format(str(flrg.LHS), flrg.LHS[-1], + self.append_log("Rule Matching", "{} -> {} (Naïve) Midpoint: {}".format(str(flrg.LHS), flrg.LHS[-1], mp)) else: flrg = self.flrgs[flrg.get_key()] @@ -324,19 +321,17 @@ memberships.append(mv) if explain: - print("\t {} \t Midpoint: {}\n".format(str(flrg), mp)) - print("\t {} \t Membership: {}\n".format(str(flrg), mv)) + self.append_log("Rule Matching", "{}, Midpoint: {} Membership: {}".format(flrg.get_key(), mp, mv)) if mode == "mean" or fuzzyfied: final = np.nanmean(midpoints) + if explain: self.append_log("Deffuzyfication", "By Mean: {}".format(final)) else: final = np.dot(midpoints, memberships) + if explain: self.append_log("Deffuzyfication", "By Memberships: {}".format(final)) ret.append(final) - if explain: - print("Deffuzyfied value: {} \n".format(final)) - return ret
    diff --git a/docs/build/html/_modules/pyFTS/models/ismailefendi.html b/docs/build/html/_modules/pyFTS/models/ismailefendi.html index d8877f6..66d8d08 100644 --- a/docs/build/html/_modules/pyFTS/models/ismailefendi.html +++ b/docs/build/html/_modules/pyFTS/models/ismailefendi.html @@ -137,7 +137,7 @@
    [docs] def train(self, ndata, **kwargs): - tmpdata = FuzzySet.fuzzyfy(ndata, partitioner=self.partitioner, method='maximum', mode='sets') + tmpdata = self.partitioner.fuzzyfy(ndata, method='maximum', mode='sets') flrs = FLR.generate_recurrent_flrs(tmpdata) self.generate_flrg(flrs)
    diff --git a/docs/build/html/_modules/pyFTS/models/multivariate/cmvfts.html b/docs/build/html/_modules/pyFTS/models/multivariate/cmvfts.html index 88c65d6..486bce4 100644 --- a/docs/build/html/_modules/pyFTS/models/multivariate/cmvfts.html +++ b/docs/build/html/_modules/pyFTS/models/multivariate/cmvfts.html @@ -78,11 +78,12 @@ from pyFTS.common import FuzzySet, FLR, fts, flrg from pyFTS.models import hofts from pyFTS.models.multivariate import mvfts, grid, common +from types import LambdaType
    [docs]class ClusteredMVFTS(mvfts.MVFTS): """ - Meta model for multivariate, high order, clustered multivariate FTS + Meta model for high order, clustered multivariate FTS """ def __init__(self, **kwargs): super(ClusteredMVFTS, self).__init__(**kwargs) @@ -112,16 +113,15 @@ ndata = [] for index, row in data.iterrows(): data_point = self.format_data(row) - ndata.append(common.fuzzyfy_instance_clustered(data_point, self.partitioner, - alpha_cut=self.alpha_cut)) + ndata.append(self.partitioner.fuzzyfy(data_point, mode='sets')) return ndata
    [docs] def train(self, data, **kwargs): + self.fts_params['order'] = self.order + self.model = self.fts_method(partitioner=self.partitioner, **self.fts_params) - if self.model.is_high_order: - self.model.order = self.order ndata = self.check_data(data) @@ -147,18 +147,53 @@ ndata = self.check_data(data) - ret = {} - for var in self.explanatory_variables: - if self.target_variable.name != var.name: - self.target_variable = var - self.partitioner.change_target_variable(var) - self.model.partitioner = self.partitioner - self.model.reset_calculated_values() + generators = kwargs.get('generators', {}) - ret[var.name] = self.model.forecast(ndata, fuzzyfied=self.pre_fuzzyfy, **kwargs) + already_processed_cols = [] + + ret = {} + + ret[self.target_variable.data_label] = self.model.forecast(ndata, fuzzyfied=self.pre_fuzzyfy, **kwargs) + + for var in self.explanatory_variables: + if var.data_label not in already_processed_cols: + if var.data_label in generators: + if isinstance(generators[var.data_label], LambdaType): + fx = generators[var.data_label] + if len(data[var.data_label].values) > self.order: + ret[var.data_label] = [fx(k) for k in data[var.data_label].values[self.order:]] + else: + ret[var.data_label] = [fx(data[var.data_label].values[-1])] + elif isinstance(generators[var.data_label], fts.FTS): + model = generators[var.data_label] + if not model.is_multivariate: + ret[var.data_label] = model.forecast(data[var.data_label].values) + else: + ret[var.data_label] = model.forecast(data) + elif self.target_variable.name != var.name: + self.target_variable = var + self.partitioner.change_target_variable(var) + self.model.partitioner = self.partitioner + self.model.reset_calculated_values() + ret[var.data_label] = self.model.forecast(ndata, fuzzyfied=self.pre_fuzzyfy, **kwargs) + + already_processed_cols.append(var.data_label) return pd.DataFrame(ret, columns=ret.keys())
    +
    [docs] def forecast_ahead_multivariate(self, data, steps, **kwargs): + + ndata = self.apply_transformations(data) + + ret = ndata.iloc[:self.order] + + for k in np.arange(0, steps): + sample = ret.iloc[k:self.order+k] + tmp = self.forecast_multivariate(sample, **kwargs) + ret = ret.append(tmp, ignore_index=True) + + return ret
    + def __str__(self): """String representation of the model""" return str(self.model) diff --git a/docs/build/html/_modules/pyFTS/models/multivariate/common.html b/docs/build/html/_modules/pyFTS/models/multivariate/common.html index bd6ae09..1b9f502 100644 --- a/docs/build/html/_modules/pyFTS/models/multivariate/common.html +++ b/docs/build/html/_modules/pyFTS/models/multivariate/common.html @@ -117,7 +117,7 @@
    [docs]def fuzzyfy_instance(data_point, var, tuples=True): - fsets = FuzzySet.fuzzyfy(data_point, var.partitioner, mode='sets', method='fuzzy', alpha_cut=var.alpha_cut) + fsets = var.partitioner.fuzzyfy(data_point, mode='sets', method='fuzzy', alpha_cut=var.alpha_cut) if tuples: return [(var.name, fs) for fs in fsets] else: @@ -128,7 +128,7 @@ alpha_cut = kwargs.get('alpha_cut', 0.0) mode = kwargs.get('mode', 'sets') fsets = [] - for fset in cluster.knn(data_point): + for fset in cluster.search(data_point, type='name'): if cluster.sets[fset].membership(data_point) > alpha_cut: if mode == 'sets': fsets.append(fset) diff --git a/docs/build/html/_modules/pyFTS/models/multivariate/mvfts.html b/docs/build/html/_modules/pyFTS/models/multivariate/mvfts.html index 4ed62a7..63fc3ee 100644 --- a/docs/build/html/_modules/pyFTS/models/multivariate/mvfts.html +++ b/docs/build/html/_modules/pyFTS/models/multivariate/mvfts.html @@ -119,7 +119,6 @@
    [docs] def format_data(self, data): ndata = {} for var in self.explanatory_variables: - #ndata[var.name] = data[var.data_label] ndata[var.name] = var.partitioner.extractor(data[var.data_label]) return ndata
    diff --git a/docs/build/html/_modules/pyFTS/models/sadaei.html b/docs/build/html/_modules/pyFTS/models/sadaei.html index 0c9bda6..1b00d0a 100644 --- a/docs/build/html/_modules/pyFTS/models/sadaei.html +++ b/docs/build/html/_modules/pyFTS/models/sadaei.html @@ -141,7 +141,7 @@ self.flrgs[flr.LHS].append_rhs(flr.RHS)
    [docs] def train(self, data, **kwargs): - tmpdata = FuzzySet.fuzzyfy(data, partitioner=self.partitioner, method='maximum', mode='sets') + tmpdata = self.partitioner.fuzzyfy(data, method='maximum', mode='sets') flrs = FLR.generate_recurrent_flrs(tmpdata) self.generate_flrg(flrs, self.c)
    diff --git a/docs/build/html/_modules/pyFTS/models/seasonal/common.html b/docs/build/html/_modules/pyFTS/models/seasonal/common.html index 13ba11d..3e4ff7f 100644 --- a/docs/build/html/_modules/pyFTS/models/seasonal/common.html +++ b/docs/build/html/_modules/pyFTS/models/seasonal/common.html @@ -93,9 +93,9 @@ day_of_month = 30 day_of_year = 364 day_of_week = 7 - hour = 6 - minute = 7 - second = 8 + hour = 24 + minute = 60 + second = 60 hour_of_day = 24 hour_of_week = 168 hour_of_month = 744 diff --git a/docs/build/html/_modules/pyFTS/models/seasonal/partitioner.html b/docs/build/html/_modules/pyFTS/models/seasonal/partitioner.html index afeaa93..4217b13 100644 --- a/docs/build/html/_modules/pyFTS/models/seasonal/partitioner.html +++ b/docs/build/html/_modules/pyFTS/models/seasonal/partitioner.html @@ -78,6 +78,7 @@ from pyFTS.models.seasonal.common import DateTime, FuzzySet, strip_datepart import numpy as np import matplotlib.pylab as plt +from scipy.spatial import KDTree
    [docs]class TimeGridPartitioner(partitioner.Partitioner): @@ -130,6 +131,8 @@ partlen = dlen / self.partitions elif self.season == DateTime.day_of_week: self.min, self.max, partlen, pl2 = 0, 7, 1, 1 + elif self.season == DateTime.minute: + self.min, self.max, partlen, pl2 = 0, 60, 1, 1 elif self.season == DateTime.hour: self.min, self.max, partlen, pl2 = 0, 24, 1, 1 elif self.season == DateTime.month: @@ -148,7 +151,7 @@ tmp = Composite(set_name, superset=True, **kwargs) tmp.append_set(FuzzySet(self.season, set_name, Membership.trimf, [self.season.value - pl2, self.season.value, - self.season.value + 0.0000001], self.season.value, alpha=.5, + self.season.value + pl2], self.season.value, alpha=1, **kwargs)) tmp.append_set(FuzzySet(self.season, set_name, Membership.trimf, [c - partlen, c, c + partlen], c, @@ -158,8 +161,8 @@ elif c == self.max - partlen: tmp = Composite(set_name, superset=True, **kwargs) tmp.append_set(FuzzySet(self.season, set_name, Membership.trimf, - [0.0000001, 0.0, - pl2], 0.0, alpha=.5, + [-pl2, 0.0, + pl2], 0.0, alpha=1, **kwargs)) tmp.append_set(FuzzySet(self.season, set_name, Membership.trimf, [c - partlen, c, c + partlen], c, @@ -196,6 +199,57 @@ return sets
    +
    [docs] def build_index(self): + points = [] + + fset = self.sets[self.ordered_sets[0]] + points.append([fset.sets[1].lower, fset.sets[1].centroid, fset.sets[1].upper]) + + for ct, key in enumerate(self.ordered_sets[1:-1]): + fset = self.sets[key] + points.append([fset.lower, fset.centroid, fset.upper]) + + fset = self.sets[self.ordered_sets[-1]] + points.append([fset.sets[1].lower, fset.sets[1].centroid, fset.sets[1].upper]) + + import sys + sys.setrecursionlimit(100000) + + self.kdtree = KDTree(points) + + sys.setrecursionlimit(1000)
    + +
    [docs] def search(self, data, **kwargs): + ''' + Perform a search for the nearest fuzzy sets of the point 'data'. This function were designed to work with several + overlapped fuzzy sets. + + :param data: the value to search for the nearest fuzzy sets + :param type: the return type: 'index' for the fuzzy set indexes or 'name' for fuzzy set names. + :param results: the number of nearest fuzzy sets to return + :return: a list with the nearest fuzzy sets + ''' + + type = kwargs.get('type','index') + results = kwargs.get('results',3) + + if self.kdtree is None: + self.build_index() + + _, ix = self.kdtree.query([data, data, data], results) + + ix = ix.tolist() + + if 0 in ix: + ix.insert(0, self.partitions-1) + elif self.partitions-1 in ix: + ix.insert(0, 0) + + if type == 'name': + return [self.ordered_sets[k] for k in sorted(ix)] + else: + return sorted(ix)
    +
    [docs] def plot(self, ax): """ diff --git a/docs/build/html/_modules/pyFTS/models/song.html b/docs/build/html/_modules/pyFTS/models/song.html index 309e7e5..63c7124 100644 --- a/docs/build/html/_modules/pyFTS/models/song.html +++ b/docs/build/html/_modules/pyFTS/models/song.html @@ -124,7 +124,7 @@
    [docs] def train(self, data, **kwargs): - tmpdata = FuzzySet.fuzzyfy(data, partitioner=self.partitioner, method='maximum', mode='sets') + tmpdata = self.partitioner.fuzzyfy(data, method='maximum', mode='sets') flrs = FLR.generate_non_recurrent_flrs(tmpdata) self.operation_matrix(flrs)
    diff --git a/docs/build/html/_modules/pyFTS/models/yu.html b/docs/build/html/_modules/pyFTS/models/yu.html index 5a430ed..efb976a 100644 --- a/docs/build/html/_modules/pyFTS/models/yu.html +++ b/docs/build/html/_modules/pyFTS/models/yu.html @@ -133,7 +133,7 @@ self.flrgs[flr.LHS].append_rhs(flr.RHS)
    [docs] def train(self, ndata, **kwargs): - tmpdata = FuzzySet.fuzzyfy(ndata, partitioner=self.partitioner, method='maximum', mode='sets') + tmpdata = self.partitioner.fuzzyfy(ndata, method='maximum', mode='sets') flrs = FLR.generate_recurrent_flrs(tmpdata) self.generate_FLRG(flrs)
    diff --git a/docs/build/html/_modules/pyFTS/partitioners/partitioner.html b/docs/build/html/_modules/pyFTS/partitioners/partitioner.html index 3b9d77b..b04bce3 100644 --- a/docs/build/html/_modules/pyFTS/partitioners/partitioner.html +++ b/docs/build/html/_modules/pyFTS/partitioners/partitioner.html @@ -74,6 +74,7 @@

    Source code for pyFTS.partitioners.partitioner

     from pyFTS.common import FuzzySet, Membership
     import numpy as np
    +from scipy.spatial import KDTree
     import matplotlib.pylab as plt
     
     
    @@ -108,6 +109,8 @@
             """Anonymous function used to extract a single primitive type from an object instance"""
             self.ordered_sets = None
             """A ordered list of the fuzzy sets names, sorted by their middle point"""
    +        self.kdtree = None
    +        """A spatial index to help in fuzzyfication"""
     
             if kwargs.get('preprocess',True):
     
    @@ -179,8 +182,112 @@
             """
             return self.sets[self.ordered_sets[-1]]
    +
    [docs] def build_index(self): + points = [] + + #self.index = {} + + for ct, key in enumerate(self.ordered_sets): + fset = self.sets[key] + points.append([fset.lower, fset.centroid, fset.upper]) + #self.index[ct] = fset.name + + import sys + sys.setrecursionlimit(100000) + + self.kdtree = KDTree(points) + + sys.setrecursionlimit(1000)
    +
    [docs] def fuzzyfy(self, data, **kwargs): - return FuzzySet.fuzzyfy(data, self, **kwargs)
    + """ + Fuzzyfy the input data according to this partitioner fuzzy sets. + + :param data: input value to be fuzzyfied + :keyword alpha_cut: the minimal membership value to be considered on fuzzyfication (only for mode='sets') + :keyword method: the fuzzyfication method (fuzzy: all fuzzy memberships, maximum: only the maximum membership) + :keyword mode: the fuzzyfication mode (sets: return the fuzzy sets names, vector: return a vector with the membership + values for all fuzzy sets, both: return a list with tuples (fuzzy set, membership value) ) + + :returns a list with the fuzzyfied values, depending on the mode + """ + + if isinstance(data, (list, np.ndarray)): + ret = [] + for inst in data: + mv = self.fuzzyfy(inst, **kwargs) + ret.append(mv) + return ret + + alpha_cut = kwargs.get('alpha_cut', 0.) + mode = kwargs.get('mode', 'sets') + method = kwargs.get('method', 'fuzzy') + + nearest = self.search(data, type='index') + + mv = np.zeros(self.partitions) + + for ix in nearest: + tmp = self[ix].membership(data) + mv[ix] = tmp if tmp >= alpha_cut else 0. + + ix = np.ravel(np.argwhere(mv > 0.)) + + if ix.size == 0: + mv[self.check_bounds(data)] = 1. + + if method == 'fuzzy' and mode == 'vector': + return mv + elif method == 'fuzzy' and mode == 'sets': + ix = np.ravel(np.argwhere(mv > 0.)) + sets = [self.ordered_sets[i] for i in ix] + return sets + elif method == 'maximum' and mode == 'sets': + mx = max(mv) + ix = np.ravel(np.argwhere(mv == mx)) + return self.ordered_sets[ix[0]] + elif mode == 'both': + ix = np.ravel(np.argwhere(mv > 0.)) + sets = [(self.ordered_sets[i], mv[i]) for i in ix] + return sets + +
    [docs] def check_bounds(self, data): + ''' + Check if the input data is outside the known Universe of Discourse and, if it is, round it to the closest + fuzzy set. + + :param data: input data to be verified + :return: the index of the closest fuzzy set when data is outside de universe of discourse or None if + the data is inside the UoD. + ''' + if data < self.min: + return 0 + elif data > self.max: + return self.partitions-1
    + +
    [docs] def search(self, data, **kwargs): + ''' + Perform a search for the nearest fuzzy sets of the point 'data'. This function were designed to work with several + overlapped fuzzy sets. + + :param data: the value to search for the nearest fuzzy sets + :param type: the return type: 'index' for the fuzzy set indexes or 'name' for fuzzy set names. + :param results: the number of nearest fuzzy sets to return + :return: a list with the nearest fuzzy sets + ''' + if self.kdtree is None: + self.build_index() + + type = kwargs.get('type','index') + results = kwargs.get('results', 3) + + _, ix = self.kdtree.query([data, data, data], results) + + if type == 'name': + return [self.ordered_sets[k] for k in sorted(ix)] + else: + return sorted(ix)
    +
    [docs] def plot(self, ax, rounding=0): """ @@ -240,7 +347,36 @@ :return: number of partitions """ - return self.partitions
    + return self.partitions + + def __getitem__(self, item): + """ + Return a fuzzy set by its order or its name. + + :param item: If item is an integer then it represents the fuzzy set index (order), if it was a string then + it represents the fuzzy set name. + :return: the fuzzy set + """ + if isinstance(item, (int, np.int, np.int8, np.int16, np.int32, np.int64)): + if item < 0 or item >= self.partitions: + raise ValueError("The fuzzy set index must be between 0 and {}.".format(self.partitions)) + return self.sets[self.ordered_sets[item]] + elif isinstance(item, str): + if item not in self.sets: + raise ValueError("The fuzzy set with name {} does not exist.".format(item)) + return self.sets[item] + else: + raise ValueError("The parameter 'item' must be an integer or a string and the value informed was {} of type {}!".format(item, type(item))) + + def __iter__(self): + """ + Iterate over the fuzzy sets, ordered by its midpoints. + + :return: An iterator over the fuzzy sets. + """ + for key in self.ordered_sets: + yield self.sets[key] + diff --git a/docs/build/html/_sources/pyFTS.models.multivariate.rst.txt b/docs/build/html/_sources/pyFTS.models.multivariate.rst.txt index 64ada4d..3ca4fb3 100644 --- a/docs/build/html/_sources/pyFTS.models.multivariate.rst.txt +++ b/docs/build/html/_sources/pyFTS.models.multivariate.rst.txt @@ -45,6 +45,22 @@ pyFTS.models.multivariate.flrg module :undoc-members: :show-inheritance: +pyFTS.models.multivariate.partitioner module +--------------------------------------------- + +.. automodule:: pyFTS.models.multivariate.partitioner + :members: + :undoc-members: + :show-inheritance: + + pyFTS.models.multivariate.grid module +------------------------------------------ + +.. automodule:: pyFTS.models.multivariate.grid + :members: + :undoc-members: + :show-inheritance: + pyFTS.models.multivariate.mvfts module -------------------------------------- @@ -68,4 +84,12 @@ pyFTS.models.multivariate.cmvfts module :members: :undoc-members: :show-inheritance: + +pyFTS.models.multivariate.granular module +--------------------------------------------- +.. automodule:: pyFTS.models.multivariate.granular + :members: + :undoc-members: + :show-inheritance: + diff --git a/docs/build/html/genindex.html b/docs/build/html/genindex.html index 9cb0b93..37a989e 100644 --- a/docs/build/html/genindex.html +++ b/docs/build/html/genindex.html @@ -154,6 +154,8 @@
  • (pyFTS.models.nonstationary.honsfts.HighOrderNonStationaryFLRG method)
  • +
  • append_log() (pyFTS.common.fts.FTS method) +
  • append_model() (pyFTS.models.ensemble.ensemble.EnsembleFTS method)
  • append_rhs() (pyFTS.common.flrg.FLRG method) @@ -278,11 +280,11 @@
  • brier_score() (in module pyFTS.benchmarks.Measures)
  • - - + @@ -330,6 +340,8 @@
  • check_bounds_index() (in module pyFTS.common.FuzzySet) @@ -633,7 +645,11 @@
  • forecast_ahead_multivariate() (pyFTS.common.fts.FTS method) + +
  • forecast_distribution() (pyFTS.benchmarks.arima.ARIMA method) @@ -354,6 +356,73 @@ transformations and partitioners.

    + +
    +

    pyFTS.models.multivariate.partitioner module

    +
    +
    +
    +class pyFTS.models.multivariate.grid.GridCluster(**kwargs)[source]
    +

    Bases: pyFTS.models.multivariate.partitioner.MultivariatePartitioner

    +

    A cartesian product of all fuzzy sets of all variables

    +
    +
    +build(data)[source]
    +

    Perform the partitioning of the Universe of Discourse

    + +++ + + + + + +
    Parameters:data – training data
    Returns:
    +
    + +
    + +
    +
    +class pyFTS.models.multivariate.grid.IncrementalGridCluster(**kwargs)[source]
    +

    Bases: pyFTS.models.multivariate.partitioner.MultivariatePartitioner

    +

    Create combinations of fuzzy sets of the variables on demand, incrementally increasing the +multivariate fuzzy set base.

    +
    +
    +fuzzyfy(data, **kwargs)[source]
    +

    Fuzzyfy the input data according to this partitioner fuzzy sets.

    + +++ + + + +
    Parameters:
      +
    • data – input value to be fuzzyfied
    • +
    • alpha_cut – the minimal membership value to be considered on fuzzyfication (only for mode=’sets’)
    • +
    • method – the fuzzyfication method (fuzzy: all fuzzy memberships, maximum: only the maximum membership)
    • +
    • mode – the fuzzyfication mode (sets: return the fuzzy sets names, vector: return a vector with the membership
    • +
    +
    +

    values for all fuzzy sets, both: return a list with tuples (fuzzy set, membership value) )

    +

    :returns a list with the fuzzyfied values, depending on the mode

    +
    + +
    + +
    + +
    +
    +prune()[source]
    +
    + +
    +

    pyFTS.models.multivariate.mvfts module

    @@ -614,7 +683,7 @@ transformations and partitioners.

    class pyFTS.models.multivariate.cmvfts.ClusteredMVFTS(**kwargs)[source]

    Bases: pyFTS.models.multivariate.mvfts.MVFTS

    -

    Meta model for multivariate, high order, clustered multivariate FTS

    +

    Meta model for high order, clustered multivariate FTS

    check_data(data)[source]
    @@ -641,6 +710,28 @@ transformations and partitioners.

    +
    +
    +forecast_ahead_multivariate(data, steps, **kwargs)[source]
    +

    Multivariate forecast n step ahead

    + +++ + + + + + +
    Parameters:
      +
    • data – Pandas dataframe with one column for each variable and with the minimal length equal to the max_lag of the model
    • +
    • steps – the number of steps ahead to forecast
    • +
    • kwargs – model specific parameters
    • +
    +
    Returns:

    a Pandas Dataframe object representing the forecasted values for each variable

    +
    +
    +
    forecast_multivariate(data, **kwargs)[source]
    @@ -705,6 +796,40 @@ transformations and partitioners.

    +
    +
    +

    pyFTS.models.multivariate.granular module

    +
    +
    +class pyFTS.models.multivariate.granular.GranularWMVFTS(**kwargs)[source]
    +

    Bases: pyFTS.models.multivariate.cmvfts.ClusteredMVFTS

    +

    Granular multivariate weighted high order FTS

    +
    +
    +model = None
    +

    The most recent trained model

    +
    + +
    +
    +train(data, **kwargs)[source]
    +

    Method specific parameter fitting

    + +++ + + + +
    Parameters:
      +
    • data – training time series data
    • +
    • kwargs – Method specific parameters
    • +
    +
    +
    + +
    +
    diff --git a/docs/build/html/pyFTS.models.seasonal.html b/docs/build/html/pyFTS.models.seasonal.html index 0ab1f4b..164eae6 100644 --- a/docs/build/html/pyFTS.models.seasonal.html +++ b/docs/build/html/pyFTS.models.seasonal.html @@ -381,8 +381,8 @@
    -
    -hour_of_day = 24
    +
    +hour = 24
    @@ -401,13 +401,13 @@
    -
    -minute_of_day = 1440
    +
    +minute = 60
    -
    -minute_of_hour = 60
    +
    +minute_of_day = 1440
    @@ -435,11 +435,6 @@ quarter = 4
    -
    -
    -second = 8
    -
    -
    second_of_day = 86400
    @@ -600,6 +595,11 @@
    +
    +
    +build_index()[source]
    +
    +
    mask = None
    @@ -614,6 +614,29 @@ :return:

    +
    +
    +search(data, **kwargs)[source]
    +

    Perform a search for the nearest fuzzy sets of the point ‘data’. This function were designed to work with several +overlapped fuzzy sets.

    + +++ + + + + + +
    Parameters:
      +
    • data – the value to search for the nearest fuzzy sets
    • +
    • type – the return type: ‘index’ for the fuzzy set indexes or ‘name’ for fuzzy set names.
    • +
    • results – the number of nearest fuzzy sets to return
    • +
    +
    Returns:

    a list with the nearest fuzzy sets

    +
    +
    +
    season = None
    diff --git a/docs/build/html/pyFTS.partitioners.html b/docs/build/html/pyFTS.partitioners.html index b34c9b6..a613d95 100644 --- a/docs/build/html/pyFTS.partitioners.html +++ b/docs/build/html/pyFTS.partitioners.html @@ -144,6 +144,29 @@
    +
    +
    +build_index()[source]
    +
    + +
    +
    +check_bounds(data)[source]
    +

    Check if the input data is outside the known Universe of Discourse and, if it is, round it to the closest +fuzzy set.

    + +++ + + + + + +
    Parameters:data – input data to be verified
    Returns:the index of the closest fuzzy set when data is outside de universe of discourse or None if
    +

    the data is inside the UoD.

    +
    +
    extractor = None
    @@ -153,7 +176,24 @@
    fuzzyfy(data, **kwargs)[source]
    -
    +

    Fuzzyfy the input data according to this partitioner fuzzy sets.

    + +++ + + + +
    Parameters:
      +
    • data – input value to be fuzzyfied
    • +
    • alpha_cut – the minimal membership value to be considered on fuzzyfication (only for mode=’sets’)
    • +
    • method – the fuzzyfication method (fuzzy: all fuzzy memberships, maximum: only the maximum membership)
    • +
    • mode – the fuzzyfication mode (sets: return the fuzzy sets names, vector: return a vector with the membership
    • +
    +
    +

    values for all fuzzy sets, both: return a list with tuples (fuzzy set, membership value) )

    +

    :returns a list with the fuzzyfied values, depending on the mode

    +
    @@ -171,6 +211,12 @@
    +
    +
    +kdtree = None
    +

    A spatial index to help in fuzzyfication

    +
    +
    lower_set()[source]
    @@ -247,6 +293,29 @@

    prefix of auto generated partition names

    +
    +
    +search(data, **kwargs)[source]
    +

    Perform a search for the nearest fuzzy sets of the point ‘data’. This function were designed to work with several +overlapped fuzzy sets.

    + +++ + + + + + +
    Parameters:
      +
    • data – the value to search for the nearest fuzzy sets
    • +
    • type – the return type: ‘index’ for the fuzzy set indexes or ‘name’ for fuzzy set names.
    • +
    • results – the number of nearest fuzzy sets to return
    • +
    +
    Returns:

    a list with the nearest fuzzy sets

    +
    +
    +
    setnames = None
    diff --git a/docs/build/html/searchindex.js b/docs/build/html/searchindex.js index 4300155..9fbac75 100644 --- a/docs/build/html/searchindex.js +++ b/docs/build/html/searchindex.js @@ -1 +1 @@ -Search.setIndex({docnames:["index","modules","pyFTS","pyFTS.benchmarks","pyFTS.common","pyFTS.data","pyFTS.distributed","pyFTS.hyperparam","pyFTS.models","pyFTS.models.ensemble","pyFTS.models.incremental","pyFTS.models.multivariate","pyFTS.models.nonstationary","pyFTS.models.seasonal","pyFTS.partitioners","pyFTS.probabilistic","quickstart"],envversion:53,filenames:["index.rst","modules.rst","pyFTS.rst","pyFTS.benchmarks.rst","pyFTS.common.rst","pyFTS.data.rst","pyFTS.distributed.rst","pyFTS.hyperparam.rst","pyFTS.models.rst","pyFTS.models.ensemble.rst","pyFTS.models.incremental.rst","pyFTS.models.multivariate.rst","pyFTS.models.nonstationary.rst","pyFTS.models.seasonal.rst","pyFTS.partitioners.rst","pyFTS.probabilistic.rst","quickstart.rst"],objects:{"":{pyFTS:[2,0,0,"-"]},"pyFTS.benchmarks":{Measures:[3,0,0,"-"],ResidualAnalysis:[3,0,0,"-"],Util:[3,0,0,"-"],arima:[3,0,0,"-"],benchmarks:[3,0,0,"-"],knn:[3,0,0,"-"],naive:[3,0,0,"-"],quantreg:[3,0,0,"-"]},"pyFTS.benchmarks.Measures":{BoxLjungStatistic:[3,1,1,""],BoxPierceStatistic:[3,1,1,""],TheilsInequality:[3,1,1,""],UStatistic:[3,1,1,""],acf:[3,1,1,""],brier_score:[3,1,1,""],coverage:[3,1,1,""],crps:[3,1,1,""],get_distribution_statistics:[3,1,1,""],get_interval_statistics:[3,1,1,""],get_point_statistics:[3,1,1,""],heavyside:[3,1,1,""],heavyside_cdf:[3,1,1,""],mape:[3,1,1,""],mape_interval:[3,1,1,""],pinball:[3,1,1,""],pinball_mean:[3,1,1,""],pmf_to_cdf:[3,1,1,""],resolution:[3,1,1,""],rmse:[3,1,1,""],rmse_interval:[3,1,1,""],sharpness:[3,1,1,""],smape:[3,1,1,""],winkler_mean:[3,1,1,""],winkler_score:[3,1,1,""]},"pyFTS.benchmarks.ResidualAnalysis":{chi_squared:[3,1,1,""],compare_residuals:[3,1,1,""],plotResiduals:[3,1,1,""],plot_residuals:[3,1,1,""],residuals:[3,1,1,""],single_plot_residuals:[3,1,1,""]},"pyFTS.benchmarks.Util":{analytic_tabular_dataframe:[3,1,1,""],analytical_data_columns:[3,1,1,""],base_dataframe_columns:[3,1,1,""],cast_dataframe_to_synthetic:[3,1,1,""],cast_dataframe_to_synthetic_interval:[3,1,1,""],cast_dataframe_to_synthetic_point:[3,1,1,""],cast_dataframe_to_synthetic_probabilistic:[3,1,1,""],check_ignore_list:[3,1,1,""],check_replace_list:[3,1,1,""],create_benchmark_tables:[3,1,1,""],extract_measure:[3,1,1,""],find_best:[3,1,1,""],get_dataframe_from_bd:[3,1,1,""],insert_benchmark:[3,1,1,""],interval_dataframe_analytic_columns:[3,1,1,""],interval_dataframe_synthetic_columns:[3,1,1,""],open_benchmark_db:[3,1,1,""],plot_dataframe_interval:[3,1,1,""],plot_dataframe_interval_pinball:[3,1,1,""],plot_dataframe_point:[3,1,1,""],plot_dataframe_probabilistic:[3,1,1,""],point_dataframe_analytic_columns:[3,1,1,""],point_dataframe_synthetic_columns:[3,1,1,""],probabilistic_dataframe_analytic_columns:[3,1,1,""],probabilistic_dataframe_synthetic_columns:[3,1,1,""],process_common_data:[3,1,1,""],save_dataframe_interval:[3,1,1,""],save_dataframe_point:[3,1,1,""],save_dataframe_probabilistic:[3,1,1,""],scale:[3,1,1,""],scale_params:[3,1,1,""],stats:[3,1,1,""],tabular_dataframe_columns:[3,1,1,""],unified_scaled_interval:[3,1,1,""],unified_scaled_interval_pinball:[3,1,1,""],unified_scaled_point:[3,1,1,""],unified_scaled_probabilistic:[3,1,1,""]},"pyFTS.benchmarks.arima":{ARIMA:[3,2,1,""]},"pyFTS.benchmarks.arima.ARIMA":{ar:[3,3,1,""],forecast:[3,3,1,""],forecast_ahead_distribution:[3,3,1,""],forecast_ahead_interval:[3,3,1,""],forecast_distribution:[3,3,1,""],forecast_interval:[3,3,1,""],ma:[3,3,1,""],train:[3,3,1,""]},"pyFTS.benchmarks.benchmarks":{SelecaoSimples_MenorRMSE:[3,1,1,""],compareModelsPlot:[3,1,1,""],compareModelsTable:[3,1,1,""],get_benchmark_interval_methods:[3,1,1,""],get_benchmark_point_methods:[3,1,1,""],get_benchmark_probabilistic_methods:[3,1,1,""],get_interval_methods:[3,1,1,""],get_point_methods:[3,1,1,""],get_point_multivariate_methods:[3,1,1,""],get_probabilistic_methods:[3,1,1,""],pftsExploreOrderAndPartitions:[3,1,1,""],plotCompared:[3,1,1,""],plot_compared_series:[3,1,1,""],plot_point:[3,1,1,""],print_distribution_statistics:[3,1,1,""],print_interval_statistics:[3,1,1,""],print_point_statistics:[3,1,1,""],process_interval_jobs:[3,1,1,""],process_point_jobs:[3,1,1,""],process_probabilistic_jobs:[3,1,1,""],run_interval:[3,1,1,""],run_point:[3,1,1,""],run_probabilistic:[3,1,1,""],simpleSearch_RMSE:[3,1,1,""],sliding_window_benchmarks:[3,1,1,""]},"pyFTS.benchmarks.knn":{KNearestNeighbors:[3,2,1,""]},"pyFTS.benchmarks.knn.KNearestNeighbors":{forecast_distribution:[3,3,1,""],knn:[3,3,1,""],train:[3,3,1,""]},"pyFTS.benchmarks.naive":{Naive:[3,2,1,""]},"pyFTS.benchmarks.naive.Naive":{forecast:[3,3,1,""]},"pyFTS.benchmarks.quantreg":{QuantileRegression:[3,2,1,""]},"pyFTS.benchmarks.quantreg.QuantileRegression":{forecast:[3,3,1,""],forecast_ahead_distribution:[3,3,1,""],forecast_ahead_interval:[3,3,1,""],forecast_distribution:[3,3,1,""],forecast_interval:[3,3,1,""],interval_to_interval:[3,3,1,""],linearmodel:[3,3,1,""],point_to_interval:[3,3,1,""],train:[3,3,1,""]},"pyFTS.common":{Composite:[4,0,0,"-"],FLR:[4,0,0,"-"],FuzzySet:[4,0,0,"-"],Membership:[4,0,0,"-"],SortedCollection:[4,0,0,"-"],Transformations:[4,0,0,"-"],Util:[4,0,0,"-"],flrg:[4,0,0,"-"],fts:[4,0,0,"-"],tree:[4,0,0,"-"]},"pyFTS.common.Composite":{FuzzySet:[4,2,1,""]},"pyFTS.common.Composite.FuzzySet":{append:[4,3,1,""],append_set:[4,3,1,""],membership:[4,3,1,""],transform:[4,3,1,""]},"pyFTS.common.FLR":{FLR:[4,2,1,""],IndexedFLR:[4,2,1,""],generate_high_order_recurrent_flr:[4,1,1,""],generate_indexed_flrs:[4,1,1,""],generate_non_recurrent_flrs:[4,1,1,""],generate_recurrent_flrs:[4,1,1,""]},"pyFTS.common.FLR.FLR":{LHS:[4,4,1,""],RHS:[4,4,1,""]},"pyFTS.common.FLR.IndexedFLR":{index:[4,4,1,""]},"pyFTS.common.FuzzySet":{FuzzySet:[4,2,1,""],check_bounds:[4,1,1,""],check_bounds_index:[4,1,1,""],fuzzyfy:[4,1,1,""],fuzzyfy_instance:[4,1,1,""],fuzzyfy_instances:[4,1,1,""],fuzzyfy_series:[4,1,1,""],fuzzyfy_series_old:[4,1,1,""],get_fuzzysets:[4,1,1,""],get_maximum_membership_fuzzyset:[4,1,1,""],get_maximum_membership_fuzzyset_index:[4,1,1,""],grant_bounds:[4,1,1,""],set_ordered:[4,1,1,""]},"pyFTS.common.FuzzySet.FuzzySet":{Z:[4,4,1,""],alpha:[4,4,1,""],centroid:[4,4,1,""],membership:[4,3,1,""],mf:[4,4,1,""],name:[4,4,1,""],parameters:[4,4,1,""],partition_function:[4,3,1,""],transform:[4,3,1,""],type:[4,4,1,""],variable:[4,4,1,""]},"pyFTS.common.Membership":{bellmf:[4,1,1,""],gaussmf:[4,1,1,""],sigmf:[4,1,1,""],singleton:[4,1,1,""],trapmf:[4,1,1,""],trimf:[4,1,1,""]},"pyFTS.common.SortedCollection":{SortedCollection:[4,2,1,""]},"pyFTS.common.SortedCollection.SortedCollection":{around:[4,3,1,""],between:[4,3,1,""],clear:[4,3,1,""],copy:[4,3,1,""],count:[4,3,1,""],find:[4,3,1,""],find_ge:[4,3,1,""],find_gt:[4,3,1,""],find_le:[4,3,1,""],find_lt:[4,3,1,""],index:[4,3,1,""],insert:[4,3,1,""],insert_right:[4,3,1,""],inside:[4,3,1,""],key:[4,4,1,""],remove:[4,3,1,""]},"pyFTS.common.Transformations":{AdaptiveExpectation:[4,2,1,""],BoxCox:[4,2,1,""],Differential:[4,2,1,""],Scale:[4,2,1,""],Transformation:[4,2,1,""],Z:[4,1,1,""],aggregate:[4,1,1,""],roi:[4,1,1,""],smoothing:[4,1,1,""]},"pyFTS.common.Transformations.AdaptiveExpectation":{apply:[4,3,1,""],inverse:[4,3,1,""],parameters:[4,4,1,""]},"pyFTS.common.Transformations.BoxCox":{apply:[4,3,1,""],inverse:[4,3,1,""],parameters:[4,4,1,""]},"pyFTS.common.Transformations.Differential":{apply:[4,3,1,""],inverse:[4,3,1,""],parameters:[4,4,1,""]},"pyFTS.common.Transformations.Scale":{apply:[4,3,1,""],inverse:[4,3,1,""],parameters:[4,4,1,""]},"pyFTS.common.Transformations.Transformation":{apply:[4,3,1,""],inverse:[4,3,1,""]},"pyFTS.common.Util":{current_milli_time:[4,1,1,""],draw_sets_on_axis:[4,1,1,""],enumerate2:[4,1,1,""],load_env:[4,1,1,""],load_obj:[4,1,1,""],persist_env:[4,1,1,""],persist_obj:[4,1,1,""],plot_compared_intervals_ahead:[4,1,1,""],plot_density_rectange:[4,1,1,""],plot_distribution:[4,1,1,""],plot_interval:[4,1,1,""],plot_probability_distributions:[4,1,1,""],plot_rules:[4,1,1,""],show_and_save_image:[4,1,1,""],sliding_window:[4,1,1,""],uniquefilename:[4,1,1,""]},"pyFTS.common.flrg":{FLRG:[4,2,1,""]},"pyFTS.common.flrg.FLRG":{LHS:[4,4,1,""],RHS:[4,4,1,""],append_rhs:[4,3,1,""],get_key:[4,3,1,""],get_lower:[4,3,1,""],get_membership:[4,3,1,""],get_midpoint:[4,3,1,""],get_midpoints:[4,3,1,""],get_upper:[4,3,1,""],order:[4,4,1,""],reset_calculated_values:[4,3,1,""]},"pyFTS.common.fts":{FTS:[4,2,1,""]},"pyFTS.common.fts.FTS":{alpha_cut:[4,4,1,""],append_rule:[4,3,1,""],append_transformation:[4,3,1,""],apply_inverse_transformations:[4,3,1,""],apply_transformations:[4,3,1,""],auto_update:[4,4,1,""],benchmark_only:[4,4,1,""],clone_parameters:[4,3,1,""],detail:[4,4,1,""],fit:[4,3,1,""],flrgs:[4,4,1,""],forecast:[4,3,1,""],forecast_ahead:[4,3,1,""],forecast_ahead_distribution:[4,3,1,""],forecast_ahead_interval:[4,3,1,""],forecast_ahead_multivariate:[4,3,1,""],forecast_distribution:[4,3,1,""],forecast_interval:[4,3,1,""],forecast_multivariate:[4,3,1,""],fuzzy:[4,3,1,""],get_UoD:[4,3,1,""],has_interval_forecasting:[4,4,1,""],has_point_forecasting:[4,4,1,""],has_probability_forecasting:[4,4,1,""],has_seasonality:[4,4,1,""],indexer:[4,4,1,""],is_clustered:[4,4,1,""],is_high_order:[4,4,1,""],is_multivariate:[4,4,1,""],is_wrapper:[4,4,1,""],lags:[4,4,1,""],len_total:[4,3,1,""],max_lag:[4,4,1,""],merge:[4,3,1,""],min_order:[4,4,1,""],name:[4,4,1,""],order:[4,4,1,""],original_max:[4,4,1,""],original_min:[4,4,1,""],partitioner:[4,4,1,""],predict:[4,3,1,""],reset_calculated_values:[4,3,1,""],sets:[4,4,1,""],shortname:[4,4,1,""],train:[4,3,1,""],transformations:[4,4,1,""],transformations_param:[4,4,1,""],uod_clip:[4,4,1,""]},"pyFTS.common.tree":{FLRGTree:[4,2,1,""],FLRGTreeNode:[4,2,1,""],build_tree_without_order:[4,1,1,""],flat:[4,1,1,""]},"pyFTS.common.tree.FLRGTreeNode":{appendChild:[4,3,1,""],getChildren:[4,3,1,""],getStr:[4,3,1,""],paths:[4,3,1,""]},"pyFTS.data":{AirPassengers:[5,0,0,"-"],Bitcoin:[5,0,0,"-"],DowJones:[5,0,0,"-"],EURGBP:[5,0,0,"-"],EURUSD:[5,0,0,"-"],Enrollments:[5,0,0,"-"],Ethereum:[5,0,0,"-"],GBPUSD:[5,0,0,"-"],INMET:[5,0,0,"-"],Malaysia:[5,0,0,"-"],NASDAQ:[5,0,0,"-"],SONDA:[5,0,0,"-"],SP500:[5,0,0,"-"],TAIEX:[5,0,0,"-"],artificial:[5,0,0,"-"],common:[5,0,0,"-"],henon:[5,0,0,"-"],logistic_map:[5,0,0,"-"],lorentz:[5,0,0,"-"],mackey_glass:[5,0,0,"-"],rossler:[5,0,0,"-"],sunspots:[5,0,0,"-"]},"pyFTS.data.AirPassengers":{get_data:[5,1,1,""],get_dataframe:[5,1,1,""]},"pyFTS.data.Bitcoin":{get_data:[5,1,1,""],get_dataframe:[5,1,1,""]},"pyFTS.data.DowJones":{get_data:[5,1,1,""],get_dataframe:[5,1,1,""]},"pyFTS.data.EURGBP":{get_data:[5,1,1,""],get_dataframe:[5,1,1,""]},"pyFTS.data.EURUSD":{get_data:[5,1,1,""],get_dataframe:[5,1,1,""]},"pyFTS.data.Enrollments":{get_data:[5,1,1,""],get_dataframe:[5,1,1,""]},"pyFTS.data.Ethereum":{get_data:[5,1,1,""],get_dataframe:[5,1,1,""]},"pyFTS.data.GBPUSD":{get_data:[5,1,1,""],get_dataframe:[5,1,1,""]},"pyFTS.data.INMET":{get_dataframe:[5,1,1,""]},"pyFTS.data.Malaysia":{get_data:[5,1,1,""],get_dataframe:[5,1,1,""]},"pyFTS.data.NASDAQ":{get_data:[5,1,1,""],get_dataframe:[5,1,1,""]},"pyFTS.data.SONDA":{get_data:[5,1,1,""],get_dataframe:[5,1,1,""]},"pyFTS.data.SP500":{get_data:[5,1,1,""],get_dataframe:[5,1,1,""]},"pyFTS.data.TAIEX":{get_data:[5,1,1,""],get_dataframe:[5,1,1,""]},"pyFTS.data.artificial":{SignalEmulator:[5,2,1,""],generate_gaussian_linear:[5,1,1,""],generate_linear_periodic_gaussian:[5,1,1,""],generate_sinoidal_periodic_gaussian:[5,1,1,""],generate_uniform_linear:[5,1,1,""],random_walk:[5,1,1,""],white_noise:[5,1,1,""]},"pyFTS.data.artificial.SignalEmulator":{blip:[5,3,1,""],components:[5,4,1,""],incremental_gaussian:[5,3,1,""],periodic_gaussian:[5,3,1,""],run:[5,3,1,""],stationary_gaussian:[5,3,1,""]},"pyFTS.data.common":{get_dataframe:[5,1,1,""]},"pyFTS.data.henon":{get_data:[5,1,1,""],get_dataframe:[5,1,1,""]},"pyFTS.data.logistic_map":{get_data:[5,1,1,""]},"pyFTS.data.lorentz":{get_data:[5,1,1,""],get_dataframe:[5,1,1,""]},"pyFTS.data.mackey_glass":{get_data:[5,1,1,""]},"pyFTS.data.rossler":{get_data:[5,1,1,""],get_dataframe:[5,1,1,""]},"pyFTS.data.sunspots":{get_data:[5,1,1,""],get_dataframe:[5,1,1,""]},"pyFTS.distributed":{spark:[6,0,0,"-"]},"pyFTS.distributed.spark":{create_multivariate_model:[6,1,1,""],create_spark_conf:[6,1,1,""],create_univariate_model:[6,1,1,""],distributed_predict:[6,1,1,""],distributed_train:[6,1,1,""],get_clustered_partitioner:[6,1,1,""],get_partitioner:[6,1,1,""],get_variables:[6,1,1,""],share_parameters:[6,1,1,""],slave_forecast_multivariate:[6,1,1,""],slave_forecast_univariate:[6,1,1,""],slave_train_multivariate:[6,1,1,""],slave_train_univariate:[6,1,1,""]},"pyFTS.hyperparam":{Util:[7,0,0,"-"]},"pyFTS.hyperparam.Util":{create_hyperparam_tables:[7,1,1,""],insert_hyperparam:[7,1,1,""],open_hyperparam_db:[7,1,1,""]},"pyFTS.models":{chen:[8,0,0,"-"],cheng:[8,0,0,"-"],ensemble:[9,0,0,"-"],hofts:[8,0,0,"-"],hwang:[8,0,0,"-"],ifts:[8,0,0,"-"],incremental:[10,0,0,"-"],ismailefendi:[8,0,0,"-"],multivariate:[11,0,0,"-"],nonstationary:[12,0,0,"-"],pwfts:[8,0,0,"-"],sadaei:[8,0,0,"-"],seasonal:[13,0,0,"-"],song:[8,0,0,"-"],yu:[8,0,0,"-"]},"pyFTS.models.chen":{ConventionalFLRG:[8,2,1,""],ConventionalFTS:[8,2,1,""]},"pyFTS.models.chen.ConventionalFLRG":{append_rhs:[8,3,1,""],get_key:[8,3,1,""]},"pyFTS.models.chen.ConventionalFTS":{forecast:[8,3,1,""],generate_flrg:[8,3,1,""],train:[8,3,1,""]},"pyFTS.models.cheng":{TrendWeightedFLRG:[8,2,1,""],TrendWeightedFTS:[8,2,1,""]},"pyFTS.models.cheng.TrendWeightedFLRG":{weights:[8,3,1,""]},"pyFTS.models.cheng.TrendWeightedFTS":{generate_FLRG:[8,3,1,""]},"pyFTS.models.ensemble":{ensemble:[9,0,0,"-"],multiseasonal:[9,0,0,"-"]},"pyFTS.models.ensemble.ensemble":{AllMethodEnsembleFTS:[9,2,1,""],EnsembleFTS:[9,2,1,""],sampler:[9,1,1,""]},"pyFTS.models.ensemble.ensemble.AllMethodEnsembleFTS":{set_transformations:[9,3,1,""],train:[9,3,1,""]},"pyFTS.models.ensemble.ensemble.EnsembleFTS":{alpha:[9,4,1,""],append_model:[9,3,1,""],forecast:[9,3,1,""],forecast_ahead_distribution:[9,3,1,""],forecast_ahead_interval:[9,3,1,""],forecast_distribution:[9,3,1,""],forecast_interval:[9,3,1,""],get_distribution_interquantile:[9,3,1,""],get_interval:[9,3,1,""],get_models_forecasts:[9,3,1,""],get_point:[9,3,1,""],interval_method:[9,4,1,""],models:[9,4,1,""],parameters:[9,4,1,""],point_method:[9,4,1,""],train:[9,3,1,""]},"pyFTS.models.ensemble.multiseasonal":{SeasonalEnsembleFTS:[9,2,1,""],train_individual_model:[9,1,1,""]},"pyFTS.models.ensemble.multiseasonal.SeasonalEnsembleFTS":{forecast_distribution:[9,3,1,""],train:[9,3,1,""],update_uod:[9,3,1,""]},"pyFTS.models.hofts":{HighOrderFLRG:[8,2,1,""],HighOrderFTS:[8,2,1,""],WeightedHighOrderFLRG:[8,2,1,""],WeightedHighOrderFTS:[8,2,1,""]},"pyFTS.models.hofts.HighOrderFLRG":{append_lhs:[8,3,1,""],append_rhs:[8,3,1,""]},"pyFTS.models.hofts.HighOrderFTS":{configure_lags:[8,3,1,""],forecast:[8,3,1,""],generate_flrg:[8,3,1,""],generate_flrg_fuzzyfied:[8,3,1,""],generate_lhs_flrg:[8,3,1,""],generate_lhs_flrg_fuzzyfied:[8,3,1,""],train:[8,3,1,""]},"pyFTS.models.hofts.WeightedHighOrderFLRG":{append_lhs:[8,3,1,""],append_rhs:[8,3,1,""],get_lower:[8,3,1,""],get_midpoint:[8,3,1,""],get_upper:[8,3,1,""],weights:[8,3,1,""]},"pyFTS.models.hofts.WeightedHighOrderFTS":{generate_lhs_flrg_fuzzyfied:[8,3,1,""]},"pyFTS.models.hwang":{HighOrderFTS:[8,2,1,""]},"pyFTS.models.hwang.HighOrderFTS":{configure_lags:[8,3,1,""],forecast:[8,3,1,""],train:[8,3,1,""]},"pyFTS.models.ifts":{IntervalFTS:[8,2,1,""]},"pyFTS.models.ifts.IntervalFTS":{forecast_interval:[8,3,1,""],get_lower:[8,3,1,""],get_sequence_membership:[8,3,1,""],get_upper:[8,3,1,""]},"pyFTS.models.incremental":{IncrementalEnsemble:[10,0,0,"-"],TimeVariant:[10,0,0,"-"]},"pyFTS.models.incremental.IncrementalEnsemble":{IncrementalEnsembleFTS:[10,2,1,""]},"pyFTS.models.incremental.IncrementalEnsemble.IncrementalEnsembleFTS":{batch_size:[10,4,1,""],forecast:[10,3,1,""],fts_method:[10,4,1,""],fts_params:[10,4,1,""],num_models:[10,4,1,""],partitioner_method:[10,4,1,""],partitioner_params:[10,4,1,""],train:[10,3,1,""],window_length:[10,4,1,""]},"pyFTS.models.incremental.TimeVariant":{Retrainer:[10,2,1,""]},"pyFTS.models.incremental.TimeVariant.Retrainer":{auto_update:[10,4,1,""],batch_size:[10,4,1,""],forecast:[10,3,1,""],fts_method:[10,4,1,""],fts_params:[10,4,1,""],model:[10,4,1,""],partitioner:[10,4,1,""],partitioner_method:[10,4,1,""],partitioner_params:[10,4,1,""],train:[10,3,1,""],window_length:[10,4,1,""]},"pyFTS.models.ismailefendi":{ImprovedWeightedFLRG:[8,2,1,""],ImprovedWeightedFTS:[8,2,1,""]},"pyFTS.models.ismailefendi.ImprovedWeightedFLRG":{append_rhs:[8,3,1,""],weights:[8,3,1,""]},"pyFTS.models.ismailefendi.ImprovedWeightedFTS":{forecast:[8,3,1,""],generate_flrg:[8,3,1,""],train:[8,3,1,""]},"pyFTS.models.multivariate":{FLR:[11,0,0,"-"],cmvfts:[11,0,0,"-"],common:[11,0,0,"-"],flrg:[11,0,0,"-"],mvfts:[11,0,0,"-"],variable:[11,0,0,"-"],wmvfts:[11,0,0,"-"]},"pyFTS.models.multivariate.FLR":{FLR:[11,2,1,""]},"pyFTS.models.multivariate.FLR.FLR":{set_lhs:[11,3,1,""],set_rhs:[11,3,1,""]},"pyFTS.models.multivariate.cmvfts":{ClusteredMVFTS:[11,2,1,""]},"pyFTS.models.multivariate.cmvfts.ClusteredMVFTS":{check_data:[11,3,1,""],forecast:[11,3,1,""],forecast_multivariate:[11,3,1,""],fts_method:[11,4,1,""],fts_params:[11,4,1,""],fuzzyfy:[11,3,1,""],model:[11,4,1,""],train:[11,3,1,""]},"pyFTS.models.multivariate.common":{MultivariateFuzzySet:[11,2,1,""],fuzzyfy_instance:[11,1,1,""],fuzzyfy_instance_clustered:[11,1,1,""]},"pyFTS.models.multivariate.common.MultivariateFuzzySet":{append_set:[11,3,1,""],membership:[11,3,1,""],set_target_variable:[11,3,1,""]},"pyFTS.models.multivariate.flrg":{FLRG:[11,2,1,""]},"pyFTS.models.multivariate.flrg.FLRG":{append_rhs:[11,3,1,""],get_lower:[11,3,1,""],get_membership:[11,3,1,""],get_upper:[11,3,1,""],set_lhs:[11,3,1,""]},"pyFTS.models.multivariate.mvfts":{MVFTS:[11,2,1,""],product_dict:[11,1,1,""]},"pyFTS.models.multivariate.mvfts.MVFTS":{append_variable:[11,3,1,""],apply_transformations:[11,3,1,""],clone_parameters:[11,3,1,""],forecast:[11,3,1,""],forecast_ahead:[11,3,1,""],forecast_interval:[11,3,1,""],format_data:[11,3,1,""],generate_flrg:[11,3,1,""],generate_flrs:[11,3,1,""],generate_lhs_flrs:[11,3,1,""],train:[11,3,1,""]},"pyFTS.models.multivariate.variable":{Variable:[11,2,1,""]},"pyFTS.models.multivariate.variable.Variable":{alias:[11,4,1,""],alpha_cut:[11,4,1,""],apply_inverse_transformations:[11,3,1,""],apply_transformations:[11,3,1,""],build:[11,3,1,""],data_label:[11,4,1,""],data_type:[11,4,1,""],mask:[11,4,1,""],name:[11,4,1,""],partitioner:[11,4,1,""],transformation:[11,4,1,""]},"pyFTS.models.multivariate.wmvfts":{WeightedFLRG:[11,2,1,""],WeightedMVFTS:[11,2,1,""]},"pyFTS.models.multivariate.wmvfts.WeightedFLRG":{append_rhs:[11,3,1,""],get_lower:[11,3,1,""],get_midpoint:[11,3,1,""],get_upper:[11,3,1,""],weights:[11,3,1,""]},"pyFTS.models.multivariate.wmvfts.WeightedMVFTS":{generate_flrg:[11,3,1,""]},"pyFTS.models.nonstationary":{common:[12,0,0,"-"],cvfts:[12,0,0,"-"],flrg:[12,0,0,"-"],honsfts:[12,0,0,"-"],nsfts:[12,0,0,"-"],partitioners:[12,0,0,"-"],perturbation:[12,0,0,"-"],util:[12,0,0,"-"]},"pyFTS.models.nonstationary.common":{FuzzySet:[12,2,1,""],check_bounds:[12,1,1,""],check_bounds_index:[12,1,1,""],fuzzify:[12,1,1,""],fuzzySeries:[12,1,1,""],window_index:[12,1,1,""]},"pyFTS.models.nonstationary.common.FuzzySet":{get_lower:[12,3,1,""],get_midpoint:[12,3,1,""],get_upper:[12,3,1,""],location:[12,4,1,""],location_params:[12,4,1,""],membership:[12,3,1,""],noise:[12,4,1,""],noise_params:[12,4,1,""],perform_location:[12,3,1,""],perform_width:[12,3,1,""],perturbate_parameters:[12,3,1,""],width:[12,4,1,""],width_params:[12,4,1,""]},"pyFTS.models.nonstationary.cvfts":{ConditionalVarianceFTS:[12,2,1,""],HighOrderNonstationaryFLRG:[12,2,1,""]},"pyFTS.models.nonstationary.cvfts.ConditionalVarianceFTS":{forecast:[12,3,1,""],forecast_interval:[12,3,1,""],generate_flrg:[12,3,1,""],perturbation_factors:[12,3,1,""],perturbation_factors__old:[12,3,1,""],train:[12,3,1,""]},"pyFTS.models.nonstationary.cvfts.HighOrderNonstationaryFLRG":{append_lhs:[12,3,1,""],append_rhs:[12,3,1,""]},"pyFTS.models.nonstationary.flrg":{NonStationaryFLRG:[12,2,1,""]},"pyFTS.models.nonstationary.flrg.NonStationaryFLRG":{get_key:[12,3,1,""],get_lower:[12,3,1,""],get_membership:[12,3,1,""],get_midpoint:[12,3,1,""],get_upper:[12,3,1,""],unpack_args:[12,3,1,""]},"pyFTS.models.nonstationary.honsfts":{HighOrderNonStationaryFLRG:[12,2,1,""],HighOrderNonStationaryFTS:[12,2,1,""]},"pyFTS.models.nonstationary.honsfts.HighOrderNonStationaryFLRG":{append_lhs:[12,3,1,""],append_rhs:[12,3,1,""]},"pyFTS.models.nonstationary.honsfts.HighOrderNonStationaryFTS":{forecast:[12,3,1,""],forecast_interval:[12,3,1,""],generate_flrg:[12,3,1,""],train:[12,3,1,""]},"pyFTS.models.nonstationary.nsfts":{ConventionalNonStationaryFLRG:[12,2,1,""],NonStationaryFTS:[12,2,1,""]},"pyFTS.models.nonstationary.nsfts.ConventionalNonStationaryFLRG":{append_rhs:[12,3,1,""],get_key:[12,3,1,""]},"pyFTS.models.nonstationary.nsfts.NonStationaryFTS":{conditional_perturbation_factors:[12,3,1,""],forecast:[12,3,1,""],forecast_interval:[12,3,1,""],generate_flrg:[12,3,1,""],train:[12,3,1,""]},"pyFTS.models.nonstationary.partitioners":{PolynomialNonStationaryPartitioner:[12,2,1,""],SimpleNonStationaryPartitioner:[12,2,1,""],simplenonstationary_gridpartitioner_builder:[12,1,1,""]},"pyFTS.models.nonstationary.partitioners.PolynomialNonStationaryPartitioner":{build:[12,3,1,""],get_polynomial_perturbations:[12,3,1,""],poly_width:[12,3,1,""],scale_down:[12,3,1,""],scale_up:[12,3,1,""]},"pyFTS.models.nonstationary.partitioners.SimpleNonStationaryPartitioner":{build:[12,3,1,""]},"pyFTS.models.nonstationary.perturbation":{exponential:[12,1,1,""],linear:[12,1,1,""],periodic:[12,1,1,""],polynomial:[12,1,1,""]},"pyFTS.models.nonstationary.util":{plot_sets:[12,1,1,""],plot_sets_conditional:[12,1,1,""]},"pyFTS.models.pwfts":{ProbabilisticWeightedFLRG:[8,2,1,""],ProbabilisticWeightedFTS:[8,2,1,""],visualize_distributions:[8,1,1,""]},"pyFTS.models.pwfts.ProbabilisticWeightedFLRG":{append_rhs:[8,3,1,""],get_lower:[8,3,1,""],get_membership:[8,3,1,""],get_midpoint:[8,3,1,""],get_upper:[8,3,1,""],lhs_conditional_probability:[8,3,1,""],partition_function:[8,3,1,""],rhs_conditional_probability:[8,3,1,""],rhs_unconditional_probability:[8,3,1,""]},"pyFTS.models.pwfts.ProbabilisticWeightedFTS":{add_new_PWFLGR:[8,3,1,""],flrg_lhs_conditional_probability:[8,3,1,""],flrg_lhs_unconditional_probability:[8,3,1,""],flrg_rhs_conditional_probability:[8,3,1,""],forecast:[8,3,1,""],forecast_ahead:[8,3,1,""],forecast_ahead_distribution:[8,3,1,""],forecast_ahead_interval:[8,3,1,""],forecast_distribution:[8,3,1,""],forecast_interval:[8,3,1,""],generate_flrg:[8,3,1,""],generate_lhs_flrg:[8,3,1,""],generate_lhs_flrg_fuzzyfied:[8,3,1,""],get_lower:[8,3,1,""],get_midpoint:[8,3,1,""],get_upper:[8,3,1,""],interval_heuristic:[8,3,1,""],interval_quantile:[8,3,1,""],point_expected_value:[8,3,1,""],point_heuristic:[8,3,1,""],train:[8,3,1,""],update_model:[8,3,1,""]},"pyFTS.models.sadaei":{ExponentialyWeightedFLRG:[8,2,1,""],ExponentialyWeightedFTS:[8,2,1,""]},"pyFTS.models.sadaei.ExponentialyWeightedFLRG":{append_rhs:[8,3,1,""],weights:[8,3,1,""]},"pyFTS.models.sadaei.ExponentialyWeightedFTS":{forecast:[8,3,1,""],generate_flrg:[8,3,1,""],train:[8,3,1,""]},"pyFTS.models.seasonal":{SeasonalIndexer:[13,0,0,"-"],cmsfts:[13,0,0,"-"],common:[13,0,0,"-"],msfts:[13,0,0,"-"],partitioner:[13,0,0,"-"],sfts:[13,0,0,"-"]},"pyFTS.models.seasonal.SeasonalIndexer":{DataFrameSeasonalIndexer:[13,2,1,""],DateTimeSeasonalIndexer:[13,2,1,""],LinearSeasonalIndexer:[13,2,1,""],SeasonalIndexer:[13,2,1,""]},"pyFTS.models.seasonal.SeasonalIndexer.DataFrameSeasonalIndexer":{get_data:[13,3,1,""],get_data_by_season:[13,3,1,""],get_index_by_season:[13,3,1,""],get_season_by_index:[13,3,1,""],get_season_of_data:[13,3,1,""],set_data:[13,3,1,""]},"pyFTS.models.seasonal.SeasonalIndexer.DateTimeSeasonalIndexer":{get_data:[13,3,1,""],get_data_by_season:[13,3,1,""],get_index:[13,3,1,""],get_index_by_season:[13,3,1,""],get_season_by_index:[13,3,1,""],get_season_of_data:[13,3,1,""],set_data:[13,3,1,""]},"pyFTS.models.seasonal.SeasonalIndexer.LinearSeasonalIndexer":{get_data:[13,3,1,""],get_index_by_season:[13,3,1,""],get_season_by_index:[13,3,1,""],get_season_of_data:[13,3,1,""]},"pyFTS.models.seasonal.SeasonalIndexer.SeasonalIndexer":{get_data:[13,3,1,""],get_data_by_season:[13,3,1,""],get_index:[13,3,1,""],get_index_by_season:[13,3,1,""],get_season_by_index:[13,3,1,""],get_season_of_data:[13,3,1,""]},"pyFTS.models.seasonal.cmsfts":{ContextualMultiSeasonalFTS:[13,2,1,""],ContextualSeasonalFLRG:[13,2,1,""]},"pyFTS.models.seasonal.cmsfts.ContextualMultiSeasonalFTS":{forecast:[13,3,1,""],forecast_ahead:[13,3,1,""],generate_flrg:[13,3,1,""],get_midpoints:[13,3,1,""],train:[13,3,1,""]},"pyFTS.models.seasonal.cmsfts.ContextualSeasonalFLRG":{append_rhs:[13,3,1,""]},"pyFTS.models.seasonal.common":{DateTime:[13,2,1,""],FuzzySet:[13,2,1,""],strip_datepart:[13,1,1,""]},"pyFTS.models.seasonal.common.DateTime":{day_of_month:[13,4,1,""],day_of_week:[13,4,1,""],day_of_year:[13,4,1,""],half:[13,4,1,""],hour_of_day:[13,4,1,""],hour_of_month:[13,4,1,""],hour_of_week:[13,4,1,""],hour_of_year:[13,4,1,""],minute_of_day:[13,4,1,""],minute_of_hour:[13,4,1,""],minute_of_month:[13,4,1,""],minute_of_week:[13,4,1,""],minute_of_year:[13,4,1,""],month:[13,4,1,""],quarter:[13,4,1,""],second:[13,4,1,""],second_of_day:[13,4,1,""],second_of_hour:[13,4,1,""],second_of_minute:[13,4,1,""],sixth:[13,4,1,""],third:[13,4,1,""],year:[13,4,1,""]},"pyFTS.models.seasonal.common.FuzzySet":{transform:[13,3,1,""]},"pyFTS.models.seasonal.msfts":{MultiSeasonalFTS:[13,2,1,""]},"pyFTS.models.seasonal.msfts.MultiSeasonalFTS":{forecast:[13,3,1,""],forecast_ahead:[13,3,1,""],generate_flrg:[13,3,1,""],train:[13,3,1,""]},"pyFTS.models.seasonal.partitioner":{TimeGridPartitioner:[13,2,1,""]},"pyFTS.models.seasonal.partitioner.TimeGridPartitioner":{build:[13,3,1,""],mask:[13,4,1,""],plot:[13,3,1,""],season:[13,4,1,""]},"pyFTS.models.seasonal.sfts":{SeasonalFLRG:[13,2,1,""],SeasonalFTS:[13,2,1,""]},"pyFTS.models.seasonal.sfts.SeasonalFLRG":{append_rhs:[13,3,1,""],get_key:[13,3,1,""]},"pyFTS.models.seasonal.sfts.SeasonalFTS":{forecast:[13,3,1,""],generate_flrg:[13,3,1,""],get_midpoints:[13,3,1,""],train:[13,3,1,""]},"pyFTS.models.song":{ConventionalFTS:[8,2,1,""]},"pyFTS.models.song.ConventionalFTS":{flr_membership_matrix:[8,3,1,""],forecast:[8,3,1,""],operation_matrix:[8,3,1,""],train:[8,3,1,""]},"pyFTS.models.yu":{WeightedFLRG:[8,2,1,""],WeightedFTS:[8,2,1,""]},"pyFTS.models.yu.WeightedFLRG":{append_rhs:[8,3,1,""],weights:[8,3,1,""]},"pyFTS.models.yu.WeightedFTS":{forecast:[8,3,1,""],generate_FLRG:[8,3,1,""],train:[8,3,1,""]},"pyFTS.partitioners":{CMeans:[14,0,0,"-"],Entropy:[14,0,0,"-"],FCM:[14,0,0,"-"],Grid:[14,0,0,"-"],Huarng:[14,0,0,"-"],Simple:[14,0,0,"-"],Singleton:[14,0,0,"-"],Util:[14,0,0,"-"],parallel_util:[14,0,0,"-"],partitioner:[14,0,0,"-"]},"pyFTS.partitioners.CMeans":{CMeansPartitioner:[14,2,1,""],c_means:[14,1,1,""],distance:[14,1,1,""]},"pyFTS.partitioners.CMeans.CMeansPartitioner":{build:[14,3,1,""]},"pyFTS.partitioners.Entropy":{EntropyPartitioner:[14,2,1,""],PMF:[14,1,1,""],bestSplit:[14,1,1,""],entropy:[14,1,1,""],informationGain:[14,1,1,""],splitAbove:[14,1,1,""],splitBelow:[14,1,1,""]},"pyFTS.partitioners.Entropy.EntropyPartitioner":{build:[14,3,1,""]},"pyFTS.partitioners.FCM":{FCMPartitioner:[14,2,1,""],fuzzy_cmeans:[14,1,1,""],fuzzy_distance:[14,1,1,""],membership:[14,1,1,""]},"pyFTS.partitioners.FCM.FCMPartitioner":{build:[14,3,1,""]},"pyFTS.partitioners.Grid":{GridPartitioner:[14,2,1,""]},"pyFTS.partitioners.Grid.GridPartitioner":{build:[14,3,1,""]},"pyFTS.partitioners.Huarng":{HuarngPartitioner:[14,2,1,""]},"pyFTS.partitioners.Huarng.HuarngPartitioner":{build:[14,3,1,""]},"pyFTS.partitioners.Simple":{SimplePartitioner:[14,2,1,""]},"pyFTS.partitioners.Simple.SimplePartitioner":{append:[14,3,1,""],append_complex:[14,3,1,""]},"pyFTS.partitioners.Singleton":{SingletonPartitioner:[14,2,1,""]},"pyFTS.partitioners.Singleton.SingletonPartitioner":{build:[14,3,1,""]},"pyFTS.partitioners.Util":{explore_partitioners:[14,1,1,""],plot_partitioners:[14,1,1,""],plot_sets:[14,1,1,""]},"pyFTS.partitioners.parallel_util":{explore_partitioners:[14,1,1,""]},"pyFTS.partitioners.partitioner":{Partitioner:[14,2,1,""]},"pyFTS.partitioners.partitioner.Partitioner":{build:[14,3,1,""],extractor:[14,4,1,""],fuzzyfy:[14,3,1,""],get_name:[14,3,1,""],lower_set:[14,3,1,""],membership_function:[14,4,1,""],name:[14,4,1,""],ordered_sets:[14,4,1,""],partitions:[14,4,1,""],plot:[14,3,1,""],plot_set:[14,3,1,""],prefix:[14,4,1,""],setnames:[14,4,1,""],transformation:[14,4,1,""],type:[14,4,1,""],upper_set:[14,3,1,""],variable:[14,4,1,""]},"pyFTS.probabilistic":{ProbabilityDistribution:[15,0,0,"-"],kde:[15,0,0,"-"]},"pyFTS.probabilistic.ProbabilityDistribution":{ProbabilityDistribution:[15,2,1,""]},"pyFTS.probabilistic.ProbabilityDistribution.ProbabilityDistribution":{append:[15,3,1,""],append_interval:[15,3,1,""],averageloglikelihood:[15,3,1,""],bins:[15,4,1,""],build_cdf_qtl:[15,3,1,""],crossentropy:[15,3,1,""],cumulative:[15,3,1,""],density:[15,3,1,""],differential_offset:[15,3,1,""],empiricalloglikelihood:[15,3,1,""],entropy:[15,3,1,""],expected_value:[15,3,1,""],kullbackleiblerdivergence:[15,3,1,""],labels:[15,4,1,""],plot:[15,3,1,""],pseudologlikelihood:[15,3,1,""],quantile:[15,3,1,""],set:[15,3,1,""],type:[15,4,1,""],uod:[15,4,1,""]},"pyFTS.probabilistic.kde":{KernelSmoothing:[15,2,1,""]},"pyFTS.probabilistic.kde.KernelSmoothing":{h:[15,4,1,""],kernel:[15,4,1,""],kernel_function:[15,3,1,""],probability:[15,3,1,""]},pyFTS:{benchmarks:[3,0,0,"-"],common:[4,0,0,"-"],conf:[2,0,0,"-"],data:[5,0,0,"-"],distributed:[6,0,0,"-"],hyperparam:[7,0,0,"-"],models:[8,0,0,"-"],partitioners:[14,0,0,"-"],probabilistic:[15,0,0,"-"]}},objnames:{"0":["py","module","Python module"],"1":["py","function","Python function"],"2":["py","class","Python class"],"3":["py","method","Python method"],"4":["py","attribute","Python attribute"]},objtypes:{"0":"py:module","1":"py:function","2":"py:class","3":"py:method","4":"py:attribute"},terms:{"261459a0":5,"57a":5,"5egspc":5,"boolean":[3,4,14],"case":4,"class":[3,4,5,8,9,10,11,12,13,14,15,16],"default":[3,4,5],"enum":13,"fa\u00e7ad":[3,4],"final":[4,5],"float":[3,4,5],"function":[3,4,7,12,14,15,16],"guimar\u00e3":[0,8],"h\u00e9non":5,"import":[4,11,16],"int":[8,16],"na\u00efv":3,"new":[4,9,10,11,14],"organiza\u00e7\u00e3o":5,"petr\u00f4nio":8,"r\u00f6ssler":5,"return":[3,4,5,6,7,8,9,10,11,12,13,14,15],"short":[4,8,16],"true":[3,4,5,10,11],"try":4,"var":[5,11],"while":4,And:3,FTS:[0,3,4,7,8,9,10,11,12,13],For:3,LHS:[4,8,12],One:14,RHS:[4,8,11,12],The:[3,4,5,7,9,10,11,14,15,16],Then:[3,16],There:16,These:[0,16],Use:13,abdullah:[8,16],acc:4,accept:4,account:15,accuraci:[3,7],acf:3,actual:[4,15],adapt:4,adaptiveexpect:4,add:[3,4,12],add_new_pwflgr:8,added:[4,5],adding:4,addit:5,address:[3,4],affect:12,after:5,age:4,aged:4,aggreg:[4,9],ahead:[3,4,8,9,10,11,12,13,16],ahed:16,airlin:5,airpasseng:[1,2],alabama:5,alia:[3,4,11],all:[3,4,9,15,16],allmethodensembleft:9,almost:16,alpha:[4,7,8,9,13],alpha_cut:[4,11],alreadi:5,also:[0,4,16],ambientai:5,analysi:3,analytic_tabular_datafram:3,analytical_data_column:3,angela:4,anonym:14,anoth:10,api:[0,4],app:6,append:[4,9,11,14,15],append_complex:14,append_interv:15,append_lh:[8,12],append_model:9,append_rh:[4,8,11,12,13],append_rul:4,append_set:[4,11],append_transform:4,append_vari:11,appendchild:4,appl:[8,14,16],appli:[3,4,11,14,15],apply_inverse_transform:[4,11],apply_transform:[4,11],approach:[3,14,16],arg:12,argument:[3,4,14],arima:[1,2],arima_model:3,around:4,arrai:[4,5,12,13],artifici:[1,2],ascend:3,aspx:5,assert:15,assign:[4,15],assoc:3,associ:5,ata:3,atmospher:5,atribut:3,attibut:4,attractor:5,auto:14,auto_upd:[4,10],autocorrel:3,autom:5,automat:4,auxiliar:4,auxiliari:15,averag:[3,5,15],averageloglikelihood:15,avg:5,axes:12,axi:[3,4,14,15],azim:3,bar:3,base:[3,4,5,8,9,10,11,12,13,14,15,16],base_dataframe_column:3,batch:[4,10],batch_sav:4,batch_siz:10,befor:16,begin:4,being:3,bell:4,bellmf:4,belo:[0,5],belog:4,below:16,benchmark:[1,2,4,7],benchmark_method:3,benchmark_methods_paramet:3,benchmark_model:3,benchmark_onli:4,bestsplit:14,better:16,between:[4,10,15],bill:4,bin:[3,15],bisect:4,bitcoin:[1,2],bivari:5,black:15,blip:5,blue:4,both:4,bound:[4,5,8,11,12,14],box:[3,4,16],boxcox:4,boxljungstatist:3,boxpiercestatist:3,brasil:5,brasilia:5,brazil:[0,9],brazilian:[0,9],brier:3,brier_scor:3,btc:5,build:[10,11,12,13,14],build_cdf_qtl:15,build_method:3,build_tree_without_ord:4,built:[5,14],buseco:5,busi:5,c_mean:14,calcul:[4,11,12],call:[4,10,11],camwa:14,can:[3,4,16],cancel:5,capabl:3,capit:5,cast_dataframe_to_synthet:3,cast_dataframe_to_synthetic_interv:3,cast_dataframe_to_synthetic_point:3,cast_dataframe_to_synthetic_probabilist:3,ccst:5,center:4,centroid:[4,13],certain:15,chain:5,chang:[5,14,16],chao:5,chaotic:[1,2],characterist:16,cheap:0,check:[4,5,16],check_bound:[4,12],check_bounds_index:[4,12],check_data:11,check_ignore_list:3,check_replace_list:3,chen:[1,2,11,13,16],cheng:[1,2,14,16],chi:3,chi_squar:3,chia:8,child:4,chissom:[8,16],clear:4,clip:4,clone:16,clone_paramet:[4,11],cluster:[3,4,11],clusteredmvft:11,cmap:4,cmean:[1,2],cmeanspartition:[14,16],cmsft:[2,8],cmvft:[2,8],code:[11,16],coeffici:[3,5],colab:16,colabor:0,color:[3,4,12,15],colormap:4,column:[4,11],columun:4,com:[5,16],common:[1,2,3,6,7,8,9,10,14,16],commun:5,compar:[3,4],compare_residu:3,comparemodelsplot:3,comparemodelst:3,complet:5,complex:5,complic:5,compon:[5,9],composit:[1,2,5,11],compress:5,comput:[8,9,14,16],computation:0,condens:3,condit:3,conditional_perturbation_factor:12,conditionalvarianceft:12,conf:[0,1],confer:8,configure_lag:8,congress:9,conn:[3,7],connect:[3,7],consid:[4,11],const_t:12,constant:5,contain:[3,4,11,14,16],content:[0,1],context:[6,14],contextu:13,contextualmultiseasonalft:13,contextualseasonalflrg:13,contin:[10,15],continu:[3,5,15],control:5,convent:[8,12,13],conventionalflrg:8,conventionalft:[8,11],conventionalnonstationaryflrg:12,copi:4,cost:[14,16],count:[4,15],counter:14,covavg:3,coverag:3,covstd:3,cox:[4,16],creat:[3,4,5,7,9,14,16],create_benchmark_t:3,create_hyperparam_t:7,create_multivariate_model:6,create_spark_conf:6,create_univariate_model:6,criteria:3,cross:[4,15],crossentropi:15,crp:3,crps1avg:3,crps1std:3,crps2avg:3,crps2std:3,crps_distr:3,crps_interv:3,crpsavg:3,crpsstd:3,csv:5,cumul:15,current:[3,5],current_milli_tim:4,cut:[4,7],cvft:[2,8],dado:[4,5,14],dai:5,daili:5,data:[0,1,2,3,4,6,7,8,9,10,11,12,13,14,15,16],data_column:3,data_field:13,data_label:11,data_point:11,data_typ:11,databas:[3,7],datafram:[3,4,5,11,13],dataframeseasonalindex:13,dataset:[1,2,3,4,7],date:[3,13],date_field:13,date_part:13,datepart:13,datetim:13,datetimeseasonalindex:13,david:4,day_of_month:13,day_of_week:13,day_of_year:13,dealer:5,dec:14,decemb:5,decis:3,decompress:5,defin:[3,7],defuzzyf:16,deg:12,delet:4,deltadist:14,demo:16,densiti:[3,4,15],departa:0,depend:[3,4,16],dependeci:4,deri:[8,16],design:[3,4,7],detail:4,determin:3,determinist:[5,14],develop:[0,16],deviat:3,dict:[3,4],dictionari:[3,4],differenti:[4,5,15,16],differential_offset:15,diffus:[8,16],dill:4,dimension:5,directli:[4,16],discours:[3,4,12,13,14,15,16],discret:15,disk:[4,14],dispi:[1,2,3,4],displac:12,displai:3,distanc:[3,14],distribut:[1,2,3,4,5,8,9,15],distributed_predict:6,distributed_train:6,diverg:15,dji:5,dkl:15,dnf:5,document:0,doi10:8,doi:[0,3,5,14],dollar:[8,16],don:5,dow:5,dowjon:[1,2],download:5,draw_sets_on_axi:4,dure:[3,4],dynam:5,each:[3,4,5,9,10,11,16],easi:[0,4],easier:4,edu:5,edward:5,efendi:[8,16],effect:[14,16],effici:4,electr:[0,8,16],eletr:5,elev:3,empir:[14,15],empiricalloglikelihood:15,emul:5,enayatifar:[8,16],end:12,endogen:11,energi:[8,16],engin:0,enrol:[1,2,8,13,16],ensembl:[1,2,4,8,10],ensembleft:[9,10],entir:4,entropi:[1,2,15,16],entropypartition:[14,16],enumerate2:4,environ:4,epanechnikov:15,equal:[3,4,8,9,10,11,12,13,16],equat:5,error:3,espaciai:5,esrl:5,estim:[3,15],etc:[4,16],eth:5,ethereum:[1,2],eur:[1,2],eurgbp:5,eurusd:5,even:[13,14],evolutionari:[1,2],exact:4,exampl:0,except:4,exchang:[5,8,16],execut:3,exist:5,expect:[4,8,15],expected_valu:15,experi:3,expert:[0,8,16],explain:[4,8],explanatory_vari:6,exploit:0,explore_partition:14,exponenti:[8,9,12,16],exponentiali:8,exponentialyweightedflrg:8,exponentialyweightedft:8,express:3,extens:11,extern:[3,4],externalforecast:3,externalmodel:3,extract:[3,5,14],extract_measur:3,extractor:14,extremum:9,facil:[3,4,5,7,14],fall:3,fals:[3,4,5,8,11,12,14],fcm:[1,2],fcmpartition:[14,16],feder:0,fetch:4,field:[5,13],fig:[4,12],figur:4,file:[3,4,5,12,14],file_analyt:3,file_path:4,file_synthet:3,filenam:[3,4,5],filenem:[3,7],filesystem:4,fill:4,filter:3,financ:5,find:[4,13,14],find_best:3,find_g:4,find_gt:4,find_l:4,find_lt:4,first:[3,4,8,12,13],fit:[3,4,8,9,10,11,12,13],five:4,flag:4,flashquot:5,flat:4,flow:5,flr:[1,2,8,12,13],flr_membership_matrix:8,flrg:[1,2,8,13],flrg_lhs_conditional_prob:8,flrg_lhs_unconditional_prob:8,flrg_rhs_conditional_prob:8,flrgtree:4,flrgtreenod:4,foreast:3,forecast:[3,4,8,9,10,11,12,13,14,16],forecast_ahead:[4,8,11,13],forecast_ahead_distribut:[3,4,8,9],forecast_ahead_interv:[3,4,8,9],forecast_ahead_multivari:4,forecast_distribut:[3,4,8,9],forecast_interv:[3,4,8,9,11,12],forecast_multivari:[4,11],forex:5,fork:0,format:[3,7,11,13],format_data:11,forward:4,found:[4,16],frederico:[0,8],frequenc:15,from:[0,3,4,5,8,11,14,15,16],fset:[8,11],fts:[1,2,3,8,9,10,11,12,13],fts_method:[10,11],fts_param:[10,11],fuzz:8,fuzzi:[2,4,8,9,11,12,13,14],fuzzif:[14,16],fuzzifi:[4,12],fuzzy_cmean:14,fuzzy_dist:14,fuzzy_set:4,fuzzydata:4,fuzzyf:[4,11,16],fuzzyfi:[4,11,14],fuzzyfy_inst:[4,11],fuzzyfy_instance_clust:11,fuzzyfy_seri:4,fuzzyfy_series_old:4,fuzzyseri:12,fuzzyset:[1,2,8,11,12,13],gadelha:[0,8],gani:[8,16],garibaldi:12,gaussian:[4,5],gaussmf:4,gbp:[1,2],gbpusd:5,gcos_wgsp:5,gener:[1,2,4,14,16],generate_flr:11,generate_flrg:[8,11,12,13],generate_flrg_fuzzyfi:8,generate_gaussian_linear:5,generate_high_order_recurrent_flr:4,generate_indexed_flr:4,generate_lhs_flr:11,generate_lhs_flrg:8,generate_lhs_flrg_fuzzyfi:8,generate_linear_periodic_gaussian:5,generate_non_recurrent_flr:4,generate_recurrent_flr:4,generate_sinoidal_periodic_gaussian:5,generate_uniform_linear:5,gerai:0,get:[3,4,5],get_benchmark_interval_method:3,get_benchmark_point_method:3,get_benchmark_probabilistic_method:3,get_clustered_partition:6,get_data:[5,13],get_data_by_season:13,get_datafram:5,get_dataframe_from_bd:3,get_distribution_interquantil:9,get_distribution_statist:3,get_fuzzyset:4,get_index:13,get_index_by_season:13,get_interv:9,get_interval_method:3,get_interval_statist:3,get_kei:[4,8,12,13],get_low:[4,8,11,12],get_maximum_membership_fuzzyset:4,get_maximum_membership_fuzzyset_index:4,get_membership:[4,8,11,12],get_midpoint:[4,8,11,12,13],get_models_forecast:9,get_nam:14,get_partition:6,get_point:9,get_point_method:3,get_point_multivariate_method:3,get_point_statist:3,get_polynomial_perturb:12,get_probabilistic_method:3,get_season_by_index:13,get_season_of_data:13,get_sequence_membership:8,get_uod:4,get_upp:[4,8,11,12],get_vari:6,getchildren:4,getstr:4,git:16,github:[0,16],given:[3,4,11,12,14,15],glass:[1,2],good:16,googl:16,gov:5,grant_bound:4,granular:13,greater:[4,5],grid:[1,2,3,13],gridpartition:[3,14,16],gridsearch:[1,2],group:[3,4,8,11,12,13],half:13,hand:4,handl:[4,8],hard:4,harmoni:[8,16],has_interval_forecast:4,has_point_forecast:4,has_probability_forecast:4,has_season:4,head:0,heavysid:3,heavyside_cdf:3,height:14,henon:[1,2],here:16,heteroskedast:12,high:[3,4,8,11,12],highorderflrg:8,highorderft:[8,12],highordernonstationaryflrg:12,highordernonstationaryft:12,histogram:15,histori:5,hoang:8,hoft:[1,2,12],hold:10,honsft:[2,8],horizon:[3,4],horizont:[0,5],hossein:8,hour:3,hour_of_dai:13,hour_of_month:13,hour_of_week:13,hour_of_year:13,hourli:5,http:[0,5,16],huarng:[1,2,16],huarngpartition:[14,16],human:0,hwang:[1,2],hybrid:[8,16],hyndman:5,hyperparam:[1,2],hyperparamet:7,identif:13,identifi:[3,4,7,8,12,13],ieee:[8,12],ifmg:0,ifnmg:0,ift:[1,2],ignor:[3,13],imag:[4,14],implement:[4,13,16],improv:[8,14,16],improvedweightedflrg:8,improvedweightedft:8,inc:[3,4],increment:[1,2,3,4,5,8,15],incremental_gaussian:5,incrementalensembl:[2,8],incrementalensembleft:10,ind:13,indentifi:[3,7],index:[3,4,5,8,9,11,13],index_field:13,index_season:13,index_seri:5,indexedflr:4,indic:[3,4,5],inequ:3,infer:5,infil:3,inform:[3,4,14,15],informationgain:14,initi:[4,5],initial_valu:5,inmet:[1,2],innov:[8,16],inp:5,input:[4,8,11,12,15],insert:[3,4,5,7],insert_benchmark:3,insert_hyperparam:7,insert_right:4,insid:[3,4,13,15],inst:[4,12],instal:0,instanc:[5,11,12,14,16],instead:4,instituit:0,institut:0,instituto:5,integ:[3,4],integr:5,intel:[8,16],intellig:[8,9],intend:0,interfer:5,intern:8,internet:5,interpol:4,interpret:4,interv:[3,4,8,9,10,11,12,14,15,16],interval_dataframe_analytic_column:3,interval_dataframe_synthetic_column:3,interval_heurist:8,interval_method:9,interval_quantil:8,interval_to_interv:3,intervalar:16,intervalft:8,introduc:16,introspect:4,invers:[4,16],ipynb:16,is_clust:4,is_high_ord:4,is_multivari:4,is_wrapp:4,ismail:[8,16],ismailefendi:[1,2],isol:14,item:4,itemgett:4,iter:[4,5],its:[5,8,11,13,14,16],ixic:5,janeiro:9,januari:5,jaroszewski:12,javedani:8,jeng:8,job:3,johnson:11,jonathan:12,jone:[4,5],journal:5,jun:[14,16],jupyt:16,kde:[1,2],kei:[3,4],kernel:15,kernel_funct:15,kernelsmooth:15,knearestneighbor:3,knn:[1,2],kullback:15,kullbackleiblerdiverg:15,kwarg:[3,4,5,6,8,9,10,11,12,13,14,15],lab:0,label:[3,4,15],lag:[4,5,7,16],lambda:4,largest:4,last:4,later:16,layman:0,lcolor:4,learn:10,lee:8,left:4,legend:[3,4],leibler:15,len_tot:4,length:[3,4,5,8,9,10,11,12,13,14,16],less:4,lett:5,level:4,lgd:4,lhs_conditional_prob:8,librari:[2,5],like:[4,16],likelihood:15,limit:4,lin:14,line:4,linear:[5,12],linearmodel:3,linearseasonalindex:13,linewidth:[3,4],linspac:5,list:[3,4,5,8,9,10,11,12,13,14,15,16],ljung:3,lo_param:3,load:[4,5,8,16],load_env:4,load_obj:4,local:5,locat:[4,5,12],location_param:12,log:[4,15],logic:[4,8,11,12,13],logist:[4,5],logistic_map:[1,2],look:4,lookup:4,lorentz:[1,2],lorenz:5,loss:3,lower:[4,5,8,11,12,14],lower_set:14,mackei:[1,2],mackey_glass:5,mai:5,main:16,malaysia:[1,2,8,16],mandatori:4,mani:16,manual:14,map:[4,5],mape:3,mape_interv:3,marcin:12,market:5,mask:[11,13],mass:4,match:4,math:[5,14],mathemat:5,matplotlib:[4,14],max:4,max_inc:5,max_ini:5,max_lag:[3,4,8,9,10,11,12,13],maxim:4,maximum:[4,5,14],mean:[3,4,5,9],measur:[1,2,7],mech:[8,16],median:9,membership:[1,2,7,8,11,12,14,16],membership_funct:14,memori:[4,10],merg:4,meta:[9,10,11],meteorologia:5,method:[0,3,4,5,7,8,9,10,11,12,13,14,16],metric:3,mft:3,middl:14,midpoint:[4,8,11,12],min:[4,15],min_inc:5,min_ini:5,min_ord:4,mina:0,mind:0,ming:8,minim:[3,4,8,9,10,11,12,13],minimum:[4,5,16],minute_of_dai:13,minute_of_hour:13,minute_of_month:13,minute_of_week:13,minute_of_year:13,mix:9,mode:4,model:[0,1,2,3,4,5,6,7,14,16],modelo:3,models_fo:3,models_ho:3,modul:[0,1,16],monash:5,monovari:4,month:13,monthli:[3,5],more:16,most:[10,11,16],move:3,msft:[2,8],mu_inc:5,mu_ini:5,mu_max:5,mu_min:5,much:4,multi:[3,4,8,11,13],multiseason:[2,8],multiseasonalft:13,multivari:[1,2,3,4,5,8,14],multivariatefuzzyset:11,musikasuwan:12,mvft:[2,8],nacion:5,naiv:[1,2],name:[3,4,5,7,9,11,12,13,14],nasdaq:[1,2],nation:5,nativ:[4,13],natur:5,nbin:[4,8],nbsp:0,ndata:[3,4,8,11,12],nearest:3,need:4,neighbor:3,next:[4,16],nice:4,noaa:5,node:[3,4],nois:[5,12],noise_param:12,non:[3,4,5,12,13,16],none:[3,4,5,9,10,11,12,13,14,15],nonperiod:5,nonstationari:[1,2,4,8],nonstationaryflrg:12,nonstationaryft:12,norm:8,normal:[9,16],north:0,norton:5,notebook:16,noth:16,nov:[14,16],now:4,npart:[12,14],nsft:[2,8],num:5,num_batch:4,num_model:10,num_season:13,number:[3,4,5,7,8,9,10,11,13,14,15,16],numer:16,numpi:[4,5],obj:[3,4,14],object:[3,4,5,8,9,11,13,14,15],objectsist:3,occur:4,occurr:4,old:4,older:4,oldest:4,onc:4,one:[3,4,5,7,8,9,10,11,12,13,15,16],ones:4,onli:4,onlin:10,only_lin:12,open:[3,7],open_benchmark_db:3,open_hyperparam_db:7,oper:[4,16],operation_matrix:8,option:[3,4,9,14],order:[3,4,7,8,11,12,13,14,16],ordered_set:[4,12,14],ordin:4,org:[0,5],origin:[3,4,16],original_max:4,original_min:4,oscil:5,other:[3,4,9,11],otherwis:3,out:16,outfil:3,outlier:5,output:[14,16],over:4,overlap:16,own:11,p500:5,packag:[0,1],page:0,pair:5,panda:[3,4,5,11,13],par1:12,par2:12,parallel_util:[1,2],param:[3,4,5,11,12,13],paramet:[3,4,5,6,7,8,9,10,11,12,13,14,15,16],parametr:16,part:[6,12],partit:[3,4,7,12,13,14,16],partition:[1,2,3,4,7,8,9,10,11,16],partition_funct:[4,8],partitioner_method:10,partitioner_param:10,partitioners_method:3,partitioners_model:3,pass:4,passeng:5,past:4,path:[3,4,14],pattern:4,pct:12,pdf:15,percent:3,percentag:3,percentu:[3,4],perform:[3,7,12,13,14,16],perform_loc:12,perform_width:12,period:[5,12],periodic_gaussian:5,persist:4,persist_env:4,persist_obj:4,person:[4,5],pertub:12,perturb:[2,8],perturbate_paramet:12,perturbation_factor:12,perturbation_factors__old:12,pesquisa:5,pftsexploreorderandpartit:3,php:5,phy:[5,8,16],physiolog:5,pictur:[3,4],pierc:3,pinbal:3,pinball_mean:3,pip:16,plambda:4,plot:[3,4,13,14,15],plot_compared_intervals_ahead:4,plot_compared_seri:3,plot_dataframe_interv:3,plot_dataframe_interval_pinbal:3,plot_dataframe_point:3,plot_dataframe_probabilist:3,plot_density_rectang:4,plot_distribut:4,plot_interv:4,plot_partition:14,plot_point:3,plot_probability_distribut:4,plot_residu:3,plot_rul:4,plot_set:[12,14],plot_sets_condit:12,plotcompar:3,plotforecast:3,plotresidu:3,pmf:[4,14],pmf_to_cdf:3,point:[3,4,8,9,10,11,12,13,14,15,16],point_dataframe_analytic_column:3,point_dataframe_synthetic_column:3,point_expected_valu:8,point_heurist:8,point_method:9,point_to_interv:3,poit:4,poly_width:12,polynomi:12,polynomialnonstationarypartition:12,poor:5,por:3,posit:[4,13],post:4,posterior:3,postprocess:[4,16],power:[4,8,16],pprint:4,pre:[4,11],prebuilt:3,predict:[3,4,8,9,11,12,16],prefix:14,preprocess:[4,11,13,16],previou:5,primari:3,primit:14,print:3,print_distribution_statist:3,print_interval_statist:3,print_point_statist:3,probabil:3,probabilist:[1,2,3,4,8,9,16],probabilistic_dataframe_analytic_column:3,probabilistic_dataframe_synthetic_column:3,probabilisticweightedflrg:8,probabilisticweightedft:8,probabilitydist:4,probabilitydistribut:[1,2,3,4,8,9],probabl:[3,4,8,9,15],problem:8,procedur:[3,4],process:[3,4,5,11],process_common_data:3,process_interval_job:3,process_point_job:3,process_probabilistic_job:3,product:[5,8,16],product_dict:11,prof:0,progress:3,project:[14,16],propos:16,provid:[0,4,9,16],psd:5,pseudo:15,pseudologlikelihood:15,pwflrg:8,pwft:[1,2],python:[2,16],q05:3,q25:3,q75:3,q95:3,quantil:[3,9,15],quantile_regress:3,quantileregress:3,quantreg:[1,2],quarter:13,queri:3,quick:0,quot:5,quotat:5,rais:4,random:5,random_walk:5,rang:[3,16],rank:3,rate:[8,16],read:5,readabl:0,real:[4,16],recent:[10,11,16],record:4,recreat:10,recurr:[4,5],red:[3,4],reference_data:4,refin:[8,16],regress:3,relat:15,relationship:[4,8,11,12,13],remov:4,ren:8,render:5,replac:3,repo:16,repr:4,repres:[3,4,8,9,11,15],represent:16,research:[0,16],reset:4,reset_calculated_valu:4,residu:3,residualanalysi:[1,2],resolut:[3,4],respect:[4,15],respons:13,result:[3,4,7],retrain:10,revers:4,review:[3,16],rhs_conditional_prob:8,rhs_unconditional_prob:8,right:4,ringgit:[8,16],rio:9,rmse:3,rmse_interv:3,rmseavg:3,rmsestd:3,rng:12,robert:5,roger:4,roi:4,root:3,rossler:[1,2],round:14,rule:[3,4,11,16],rules_by_axi:4,run:[3,5],run_interv:3,run_point:3,run_probabilist:3,sadaei:[1,2,16],salang:12,same:[4,9],sampl:[3,5,8,16],sampler:9,save:[3,4,12,14],save_best:3,save_dataframe_interv:3,save_dataframe_point:3,save_dataframe_probabilist:3,save_model:4,scale:[3,4,16],scale_down:12,scale_param:3,scale_up:12,scan:4,scheme:[3,7,16],scienc:5,scientist:0,score:3,search:[0,4,8,16],season:[1,2,3,4,8,9,16],seasonalensembleft:9,seasonalflrg:13,seasonalft:13,seasonalindex:[2,8],second:13,second_of_dai:13,second_of_hour:13,second_of_minut:13,secur:5,selecaosimples_menorrms:3,select:5,sep:5,separ:5,sequenc:4,seri:[1,2,3,4,8,9,10,11,12,13,14],set:[3,4,7,8,11,12,13,14,15,16],set_data:13,set_lh:11,set_ord:4,set_rh:11,set_target_vari:11,set_transform:9,seth:11,setnam:14,sever:[3,4,5,9,14],severiano:8,sft:[2,8],shape:4,share:9,share_paramet:6,shared_partition:6,sharp:3,sharpavg:3,sharpstd:3,shortnam:4,show:[4,14],show_and_save_imag:4,shyi:8,side:4,sigma:5,sigma_inc:5,sigma_ini:5,sigma_max:5,sigma_min:5,sigmf:4,sigmoid:4,signal:5,signalemul:5,silva:[0,8,9],simpl:[0,1,2,5,13],simplenonstationary_gridpartitioner_build:12,simplenonstationarypartition:12,simplepartition:14,simpler:4,simplesearch_rms:3,singl:[4,14],single_plot_residu:3,singleton:[1,2,4],singletonpartition:14,sinoid:5,sistema:5,sixth:13,size:[3,4,12,14],slave_forecast_multivari:6,slave_forecast_univari:6,slave_train_multivari:6,slave_train_univari:6,slice:4,slide:[3,4],sliding_window:4,sliding_window_benchmark:3,smape:3,smith:4,smooth:[4,16],social:[14,16],solar:8,sonda:[1,2],song:[1,2,13,16],sort:[4,14],sort_ascend:3,sort_column:3,sortedcollect:[1,2],sourc:[3,4,5,6,7,8,9,10,11,12,13,14,15],sp500:5,space:4,spark:[1,2],specif:[3,4,8,9,10,11,12,13],split:[3,4,14],splitabov:14,splitbelow:14,splite:16,sql:3,sqlite3:[3,7],sqlite:[3,7],squar:3,ssci:8,standard:[3,5,16],start:[0,3,4,5,8,11,12,13],stat:[3,8,16],station:5,stationari:12,stationary_gaussian:5,statist:[0,3],statsmodel:3,step:[3,4,8,9,10,11,12,13,16],steps_ahead:[3,4],stochast:5,stock:5,store:[3,4,7],strang:5,string:[4,11,13,14],strip_datepart:13,structur:[4,13],student:0,style:4,submodul:[0,1],subpackag:[0,1],suitabl:0,sum:8,sunspot:[1,2],superset:4,support:4,symbol:5,symmetr:3,symposium:8,synthet:[1,2,3],syst:[8,13,14,16],system:[5,8,12],tabl:[3,7],tabular_dataframe_column:3,tag:[3,7],taiex:[1,2,8,16],taiwan:5,take:16,tam:[3,4,12,14,15],target:3,target_vari:[4,6],tau:[3,5,15],technol:[14,16],tempeatur:5,tempor:[4,13,16],term:[3,4,8,16],test:[3,4,16],test_data:3,than:[4,5,16],thei:4,theil:3,theilsinequ:3,theoret:3,theori:16,thi:[0,4,5,8,11,12,13,14,15,16],third:13,thoma:4,those:4,thres1:14,thres2:14,threshold:14,through:5,time:[1,2,3,4,8,9,10,11,12,13,14],time_from:4,time_to:4,timegridpartition:13,times2:3,timeseri:5,timevari:[2,8],titl:[3,14,15],tool:[0,16],total:[4,5],tradit:8,train:[3,4,8,9,10,11,12,13,14],train_data:[3,9],train_individual_model:9,transact:12,transform:[1,2,3,7,11,12,13,14,16],transformations_param:4,transit:[4,16],translat:16,trapezoid:[4,14,16],trapmf:4,tree:[1,2],trend:[8,16],trendweightedflrg:8,trendweightedft:8,triangular:4,trigger:4,trimf:4,tsa:3,tsdl:5,tun:7,tupl:[3,4,7,11],two:5,twse:5,type:[3,4,5,6,11,13,14,15,16],typeonlegend:[3,4],uavg:3,ufmg:0,under:4,unified_scaled_interv:3,unified_scaled_interval_pinbal:3,unified_scaled_point:3,unified_scaled_probabilist:3,uniform:5,uniqu:[4,8,9,12,13],uniquefilenam:4,unit:13,univari:5,univers:[0,3,4,5,12,13,14,15,16],unpack_arg:12,uod:[3,4,7,8,11,15],uod_clip:4,up_param:3,updat:10,update_model:8,update_uod:9,updateuod:[4,11],upper:[4,5,8,11,12,14],upper_set:14,url:[0,3,5,6],usa:5,usag:0,usd:[1,2],use:[0,4],used:[3,4,7,8,9,14,16],user:[3,7],using:[4,8,10,14,16],ustatist:3,ustd:3,usual:[4,16],util:[1,2,8],val:14,valid:4,valu:[3,4,5,7,8,9,10,11,12,13,15,16],valueerror:4,variabl:[2,4,6,8,14],varianc:[4,5],variant:10,variat:5,vector:4,veri:[5,8],verif:3,visualize_distribut:8,vmax:5,vmin:5,vol:[8,13,14,16],walk:5,want:0,weather:3,weight:[5,8,11,16],weightedflrg:[8,11],weightedft:8,weightedhighorderflrg:8,weightedhighorderft:8,weightedmvft:11,when:[4,10,11],where:[3,4,8,11,13],which:[3,4,7,16],white_nois:5,whose:0,width:[4,12,14,15],width_param:12,window:[3,4,10],window_index:12,window_kei:3,window_length:10,window_s:12,windows:[3,4],winkler:3,winkler_mean:3,winkler_scor:3,without:4,wmvft:[2,8],word:[3,7],work:4,wrap:[3,9,10],wrapper:4,www:5,xiii:9,yahoo:5,year:13,yearli:5,yeh:[14,16],you:4,young:4,younger:4,youngest:4,zenodo:0},titles:["pyFTS - Fuzzy Time Series for Python","pyFTS","pyFTS package","pyFTS.benchmarks package","pyFTS.common package","pyFTS.data package","pyFTS.distributed package","pyFTS.hyperparam package","pyFTS.models package","pyFTS.models.ensemble package","pyFTS.models.incremental package","pyFTS.models.multivariate package","pyFTS.models.nonstationary package","pyFTS.models.seasonal package","pyFTS.partitioners package","pyFTS.probabilistic package","pyFTS Quick Start"],titleterms:{FTS:16,airpasseng:5,arima:3,artifici:5,benchmark:3,bitcoin:5,chaotic:5,chen:8,cheng:8,cmean:14,cmsft:13,cmvft:11,common:[4,5,11,12,13],composit:4,conf:2,content:[2,3,4,5,6,7,8,9,10,11,12,13,14,15],cvft:12,data:5,dataset:5,dispi:6,distribut:6,dowjon:5,enrol:5,ensembl:9,entropi:14,ethereum:5,eur:5,evolutionari:7,exampl:16,fcm:14,flr:[4,11],flrg:[4,11,12],fts:4,fuzzi:[0,16],fuzzyset:4,gbp:5,gener:5,glass:5,grid:14,gridsearch:7,henon:5,hoft:8,honsft:12,how:[0,16],huarng:14,hwang:8,hyperparam:7,ift:8,increment:10,incrementalensembl:10,index:0,inmet:5,instal:16,ismailefendi:8,kde:15,knn:3,librari:0,logistic_map:5,lorentz:5,mackei:5,malaysia:5,measur:3,membership:4,model:[8,9,10,11,12,13],modul:[2,3,4,5,6,7,8,9,10,11,12,13,14,15],msft:13,multiseason:9,multivari:11,mvft:11,naiv:3,nasdaq:5,nonstationari:12,nsft:12,packag:[2,3,4,5,6,7,8,9,10,11,12,13,14,15],parallel_util:14,partition:[12,13,14],perturb:12,probabilist:15,probabilitydistribut:15,pwft:8,pyft:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16],python:0,quantreg:3,quick:16,refer:[0,16],residualanalysi:3,rossler:5,sadaei:8,season:13,seasonalindex:13,seri:[0,5,16],sft:13,simpl:14,singleton:14,sonda:5,song:8,sortedcollect:4,spark:6,start:16,submodul:[2,3,4,5,6,7,8,9,10,11,12,13,14,15],subpackag:[2,8],sunspot:5,synthet:5,taiex:5,time:[0,5,16],timevari:10,transform:4,tree:4,usag:16,usd:5,util:[3,4,7,12,14],variabl:11,what:[0,16],wmvft:11}}) \ No newline at end of file +Search.setIndex({docnames:["index","modules","pyFTS","pyFTS.benchmarks","pyFTS.common","pyFTS.data","pyFTS.distributed","pyFTS.hyperparam","pyFTS.models","pyFTS.models.ensemble","pyFTS.models.incremental","pyFTS.models.multivariate","pyFTS.models.nonstationary","pyFTS.models.seasonal","pyFTS.partitioners","pyFTS.probabilistic","quickstart"],envversion:53,filenames:["index.rst","modules.rst","pyFTS.rst","pyFTS.benchmarks.rst","pyFTS.common.rst","pyFTS.data.rst","pyFTS.distributed.rst","pyFTS.hyperparam.rst","pyFTS.models.rst","pyFTS.models.ensemble.rst","pyFTS.models.incremental.rst","pyFTS.models.multivariate.rst","pyFTS.models.nonstationary.rst","pyFTS.models.seasonal.rst","pyFTS.partitioners.rst","pyFTS.probabilistic.rst","quickstart.rst"],objects:{"":{pyFTS:[2,0,0,"-"]},"pyFTS.benchmarks":{Measures:[3,0,0,"-"],ResidualAnalysis:[3,0,0,"-"],Util:[3,0,0,"-"],arima:[3,0,0,"-"],benchmarks:[3,0,0,"-"],knn:[3,0,0,"-"],naive:[3,0,0,"-"],quantreg:[3,0,0,"-"]},"pyFTS.benchmarks.Measures":{BoxLjungStatistic:[3,1,1,""],BoxPierceStatistic:[3,1,1,""],TheilsInequality:[3,1,1,""],UStatistic:[3,1,1,""],acf:[3,1,1,""],brier_score:[3,1,1,""],coverage:[3,1,1,""],crps:[3,1,1,""],get_distribution_statistics:[3,1,1,""],get_interval_statistics:[3,1,1,""],get_point_statistics:[3,1,1,""],heavyside:[3,1,1,""],heavyside_cdf:[3,1,1,""],mape:[3,1,1,""],mape_interval:[3,1,1,""],pinball:[3,1,1,""],pinball_mean:[3,1,1,""],pmf_to_cdf:[3,1,1,""],resolution:[3,1,1,""],rmse:[3,1,1,""],rmse_interval:[3,1,1,""],sharpness:[3,1,1,""],smape:[3,1,1,""],winkler_mean:[3,1,1,""],winkler_score:[3,1,1,""]},"pyFTS.benchmarks.ResidualAnalysis":{chi_squared:[3,1,1,""],compare_residuals:[3,1,1,""],plotResiduals:[3,1,1,""],plot_residuals:[3,1,1,""],residuals:[3,1,1,""],single_plot_residuals:[3,1,1,""]},"pyFTS.benchmarks.Util":{analytic_tabular_dataframe:[3,1,1,""],analytical_data_columns:[3,1,1,""],base_dataframe_columns:[3,1,1,""],cast_dataframe_to_synthetic:[3,1,1,""],cast_dataframe_to_synthetic_interval:[3,1,1,""],cast_dataframe_to_synthetic_point:[3,1,1,""],cast_dataframe_to_synthetic_probabilistic:[3,1,1,""],check_ignore_list:[3,1,1,""],check_replace_list:[3,1,1,""],create_benchmark_tables:[3,1,1,""],extract_measure:[3,1,1,""],find_best:[3,1,1,""],get_dataframe_from_bd:[3,1,1,""],insert_benchmark:[3,1,1,""],interval_dataframe_analytic_columns:[3,1,1,""],interval_dataframe_synthetic_columns:[3,1,1,""],open_benchmark_db:[3,1,1,""],plot_dataframe_interval:[3,1,1,""],plot_dataframe_interval_pinball:[3,1,1,""],plot_dataframe_point:[3,1,1,""],plot_dataframe_probabilistic:[3,1,1,""],point_dataframe_analytic_columns:[3,1,1,""],point_dataframe_synthetic_columns:[3,1,1,""],probabilistic_dataframe_analytic_columns:[3,1,1,""],probabilistic_dataframe_synthetic_columns:[3,1,1,""],process_common_data:[3,1,1,""],save_dataframe_interval:[3,1,1,""],save_dataframe_point:[3,1,1,""],save_dataframe_probabilistic:[3,1,1,""],scale:[3,1,1,""],scale_params:[3,1,1,""],stats:[3,1,1,""],tabular_dataframe_columns:[3,1,1,""],unified_scaled_interval:[3,1,1,""],unified_scaled_interval_pinball:[3,1,1,""],unified_scaled_point:[3,1,1,""],unified_scaled_probabilistic:[3,1,1,""]},"pyFTS.benchmarks.arima":{ARIMA:[3,2,1,""]},"pyFTS.benchmarks.arima.ARIMA":{ar:[3,3,1,""],forecast:[3,3,1,""],forecast_ahead_distribution:[3,3,1,""],forecast_ahead_interval:[3,3,1,""],forecast_distribution:[3,3,1,""],forecast_interval:[3,3,1,""],ma:[3,3,1,""],train:[3,3,1,""]},"pyFTS.benchmarks.benchmarks":{SelecaoSimples_MenorRMSE:[3,1,1,""],compareModelsPlot:[3,1,1,""],compareModelsTable:[3,1,1,""],get_benchmark_interval_methods:[3,1,1,""],get_benchmark_point_methods:[3,1,1,""],get_benchmark_probabilistic_methods:[3,1,1,""],get_interval_methods:[3,1,1,""],get_point_methods:[3,1,1,""],get_point_multivariate_methods:[3,1,1,""],get_probabilistic_methods:[3,1,1,""],pftsExploreOrderAndPartitions:[3,1,1,""],plotCompared:[3,1,1,""],plot_compared_series:[3,1,1,""],plot_point:[3,1,1,""],print_distribution_statistics:[3,1,1,""],print_interval_statistics:[3,1,1,""],print_point_statistics:[3,1,1,""],process_interval_jobs:[3,1,1,""],process_point_jobs:[3,1,1,""],process_probabilistic_jobs:[3,1,1,""],run_interval:[3,1,1,""],run_point:[3,1,1,""],run_probabilistic:[3,1,1,""],simpleSearch_RMSE:[3,1,1,""],sliding_window_benchmarks:[3,1,1,""]},"pyFTS.benchmarks.knn":{KNearestNeighbors:[3,2,1,""]},"pyFTS.benchmarks.knn.KNearestNeighbors":{forecast_distribution:[3,3,1,""],knn:[3,3,1,""],train:[3,3,1,""]},"pyFTS.benchmarks.naive":{Naive:[3,2,1,""]},"pyFTS.benchmarks.naive.Naive":{forecast:[3,3,1,""]},"pyFTS.benchmarks.quantreg":{QuantileRegression:[3,2,1,""]},"pyFTS.benchmarks.quantreg.QuantileRegression":{forecast:[3,3,1,""],forecast_ahead_distribution:[3,3,1,""],forecast_ahead_interval:[3,3,1,""],forecast_distribution:[3,3,1,""],forecast_interval:[3,3,1,""],interval_to_interval:[3,3,1,""],linearmodel:[3,3,1,""],point_to_interval:[3,3,1,""],train:[3,3,1,""]},"pyFTS.common":{Composite:[4,0,0,"-"],FLR:[4,0,0,"-"],FuzzySet:[4,0,0,"-"],Membership:[4,0,0,"-"],SortedCollection:[4,0,0,"-"],Transformations:[4,0,0,"-"],Util:[4,0,0,"-"],flrg:[4,0,0,"-"],fts:[4,0,0,"-"],tree:[4,0,0,"-"]},"pyFTS.common.Composite":{FuzzySet:[4,2,1,""]},"pyFTS.common.Composite.FuzzySet":{append:[4,3,1,""],append_set:[4,3,1,""],membership:[4,3,1,""],transform:[4,3,1,""]},"pyFTS.common.FLR":{FLR:[4,2,1,""],IndexedFLR:[4,2,1,""],generate_high_order_recurrent_flr:[4,1,1,""],generate_indexed_flrs:[4,1,1,""],generate_non_recurrent_flrs:[4,1,1,""],generate_recurrent_flrs:[4,1,1,""]},"pyFTS.common.FLR.FLR":{LHS:[4,4,1,""],RHS:[4,4,1,""]},"pyFTS.common.FLR.IndexedFLR":{index:[4,4,1,""]},"pyFTS.common.FuzzySet":{FuzzySet:[4,2,1,""],check_bounds:[4,1,1,""],check_bounds_index:[4,1,1,""],fuzzyfy:[4,1,1,""],fuzzyfy_instance:[4,1,1,""],fuzzyfy_instances:[4,1,1,""],fuzzyfy_series:[4,1,1,""],fuzzyfy_series_old:[4,1,1,""],get_fuzzysets:[4,1,1,""],get_maximum_membership_fuzzyset:[4,1,1,""],get_maximum_membership_fuzzyset_index:[4,1,1,""],grant_bounds:[4,1,1,""],set_ordered:[4,1,1,""]},"pyFTS.common.FuzzySet.FuzzySet":{Z:[4,4,1,""],alpha:[4,4,1,""],centroid:[4,4,1,""],membership:[4,3,1,""],mf:[4,4,1,""],name:[4,4,1,""],parameters:[4,4,1,""],partition_function:[4,3,1,""],transform:[4,3,1,""],type:[4,4,1,""],variable:[4,4,1,""]},"pyFTS.common.Membership":{bellmf:[4,1,1,""],gaussmf:[4,1,1,""],sigmf:[4,1,1,""],singleton:[4,1,1,""],trapmf:[4,1,1,""],trimf:[4,1,1,""]},"pyFTS.common.SortedCollection":{SortedCollection:[4,2,1,""]},"pyFTS.common.SortedCollection.SortedCollection":{around:[4,3,1,""],between:[4,3,1,""],clear:[4,3,1,""],copy:[4,3,1,""],count:[4,3,1,""],find:[4,3,1,""],find_ge:[4,3,1,""],find_gt:[4,3,1,""],find_le:[4,3,1,""],find_lt:[4,3,1,""],index:[4,3,1,""],insert:[4,3,1,""],insert_right:[4,3,1,""],inside:[4,3,1,""],key:[4,4,1,""],remove:[4,3,1,""]},"pyFTS.common.Transformations":{AdaptiveExpectation:[4,2,1,""],BoxCox:[4,2,1,""],Differential:[4,2,1,""],Scale:[4,2,1,""],Transformation:[4,2,1,""],Z:[4,1,1,""],aggregate:[4,1,1,""],roi:[4,1,1,""],smoothing:[4,1,1,""]},"pyFTS.common.Transformations.AdaptiveExpectation":{apply:[4,3,1,""],inverse:[4,3,1,""],parameters:[4,4,1,""]},"pyFTS.common.Transformations.BoxCox":{apply:[4,3,1,""],inverse:[4,3,1,""],parameters:[4,4,1,""]},"pyFTS.common.Transformations.Differential":{apply:[4,3,1,""],inverse:[4,3,1,""],parameters:[4,4,1,""]},"pyFTS.common.Transformations.Scale":{apply:[4,3,1,""],inverse:[4,3,1,""],parameters:[4,4,1,""]},"pyFTS.common.Transformations.Transformation":{apply:[4,3,1,""],inverse:[4,3,1,""]},"pyFTS.common.Util":{current_milli_time:[4,1,1,""],draw_sets_on_axis:[4,1,1,""],enumerate2:[4,1,1,""],load_env:[4,1,1,""],load_obj:[4,1,1,""],persist_env:[4,1,1,""],persist_obj:[4,1,1,""],plot_compared_intervals_ahead:[4,1,1,""],plot_density_rectange:[4,1,1,""],plot_distribution:[4,1,1,""],plot_interval:[4,1,1,""],plot_probability_distributions:[4,1,1,""],plot_rules:[4,1,1,""],show_and_save_image:[4,1,1,""],sliding_window:[4,1,1,""],uniquefilename:[4,1,1,""]},"pyFTS.common.flrg":{FLRG:[4,2,1,""]},"pyFTS.common.flrg.FLRG":{LHS:[4,4,1,""],RHS:[4,4,1,""],append_rhs:[4,3,1,""],get_key:[4,3,1,""],get_lower:[4,3,1,""],get_membership:[4,3,1,""],get_midpoint:[4,3,1,""],get_midpoints:[4,3,1,""],get_upper:[4,3,1,""],order:[4,4,1,""],reset_calculated_values:[4,3,1,""]},"pyFTS.common.fts":{FTS:[4,2,1,""]},"pyFTS.common.fts.FTS":{alpha_cut:[4,4,1,""],append_log:[4,3,1,""],append_rule:[4,3,1,""],append_transformation:[4,3,1,""],apply_inverse_transformations:[4,3,1,""],apply_transformations:[4,3,1,""],auto_update:[4,4,1,""],benchmark_only:[4,4,1,""],clone_parameters:[4,3,1,""],detail:[4,4,1,""],fit:[4,3,1,""],flrgs:[4,4,1,""],forecast:[4,3,1,""],forecast_ahead:[4,3,1,""],forecast_ahead_distribution:[4,3,1,""],forecast_ahead_interval:[4,3,1,""],forecast_ahead_multivariate:[4,3,1,""],forecast_distribution:[4,3,1,""],forecast_interval:[4,3,1,""],forecast_multivariate:[4,3,1,""],fuzzy:[4,3,1,""],get_UoD:[4,3,1,""],has_interval_forecasting:[4,4,1,""],has_point_forecasting:[4,4,1,""],has_probability_forecasting:[4,4,1,""],has_seasonality:[4,4,1,""],indexer:[4,4,1,""],is_clustered:[4,4,1,""],is_high_order:[4,4,1,""],is_multivariate:[4,4,1,""],is_wrapper:[4,4,1,""],lags:[4,4,1,""],len_total:[4,3,1,""],log:[4,4,1,""],max_lag:[4,4,1,""],merge:[4,3,1,""],min_order:[4,4,1,""],name:[4,4,1,""],order:[4,4,1,""],original_max:[4,4,1,""],original_min:[4,4,1,""],partitioner:[4,4,1,""],predict:[4,3,1,""],reset_calculated_values:[4,3,1,""],sets:[4,4,1,""],shortname:[4,4,1,""],train:[4,3,1,""],transformations:[4,4,1,""],transformations_param:[4,4,1,""],uod_clip:[4,4,1,""]},"pyFTS.common.tree":{FLRGTree:[4,2,1,""],FLRGTreeNode:[4,2,1,""],build_tree_without_order:[4,1,1,""],flat:[4,1,1,""]},"pyFTS.common.tree.FLRGTreeNode":{appendChild:[4,3,1,""],getChildren:[4,3,1,""],getStr:[4,3,1,""],paths:[4,3,1,""]},"pyFTS.data":{AirPassengers:[5,0,0,"-"],Bitcoin:[5,0,0,"-"],DowJones:[5,0,0,"-"],EURGBP:[5,0,0,"-"],EURUSD:[5,0,0,"-"],Enrollments:[5,0,0,"-"],Ethereum:[5,0,0,"-"],GBPUSD:[5,0,0,"-"],INMET:[5,0,0,"-"],Malaysia:[5,0,0,"-"],NASDAQ:[5,0,0,"-"],SONDA:[5,0,0,"-"],SP500:[5,0,0,"-"],TAIEX:[5,0,0,"-"],artificial:[5,0,0,"-"],common:[5,0,0,"-"],henon:[5,0,0,"-"],logistic_map:[5,0,0,"-"],lorentz:[5,0,0,"-"],mackey_glass:[5,0,0,"-"],rossler:[5,0,0,"-"],sunspots:[5,0,0,"-"]},"pyFTS.data.AirPassengers":{get_data:[5,1,1,""],get_dataframe:[5,1,1,""]},"pyFTS.data.Bitcoin":{get_data:[5,1,1,""],get_dataframe:[5,1,1,""]},"pyFTS.data.DowJones":{get_data:[5,1,1,""],get_dataframe:[5,1,1,""]},"pyFTS.data.EURGBP":{get_data:[5,1,1,""],get_dataframe:[5,1,1,""]},"pyFTS.data.EURUSD":{get_data:[5,1,1,""],get_dataframe:[5,1,1,""]},"pyFTS.data.Enrollments":{get_data:[5,1,1,""],get_dataframe:[5,1,1,""]},"pyFTS.data.Ethereum":{get_data:[5,1,1,""],get_dataframe:[5,1,1,""]},"pyFTS.data.GBPUSD":{get_data:[5,1,1,""],get_dataframe:[5,1,1,""]},"pyFTS.data.INMET":{get_dataframe:[5,1,1,""]},"pyFTS.data.Malaysia":{get_data:[5,1,1,""],get_dataframe:[5,1,1,""]},"pyFTS.data.NASDAQ":{get_data:[5,1,1,""],get_dataframe:[5,1,1,""]},"pyFTS.data.SONDA":{get_data:[5,1,1,""],get_dataframe:[5,1,1,""]},"pyFTS.data.SP500":{get_data:[5,1,1,""],get_dataframe:[5,1,1,""]},"pyFTS.data.TAIEX":{get_data:[5,1,1,""],get_dataframe:[5,1,1,""]},"pyFTS.data.artificial":{SignalEmulator:[5,2,1,""],generate_gaussian_linear:[5,1,1,""],generate_linear_periodic_gaussian:[5,1,1,""],generate_sinoidal_periodic_gaussian:[5,1,1,""],generate_uniform_linear:[5,1,1,""],random_walk:[5,1,1,""],white_noise:[5,1,1,""]},"pyFTS.data.artificial.SignalEmulator":{blip:[5,3,1,""],components:[5,4,1,""],incremental_gaussian:[5,3,1,""],periodic_gaussian:[5,3,1,""],run:[5,3,1,""],stationary_gaussian:[5,3,1,""]},"pyFTS.data.common":{get_dataframe:[5,1,1,""]},"pyFTS.data.henon":{get_data:[5,1,1,""],get_dataframe:[5,1,1,""]},"pyFTS.data.logistic_map":{get_data:[5,1,1,""]},"pyFTS.data.lorentz":{get_data:[5,1,1,""],get_dataframe:[5,1,1,""]},"pyFTS.data.mackey_glass":{get_data:[5,1,1,""]},"pyFTS.data.rossler":{get_data:[5,1,1,""],get_dataframe:[5,1,1,""]},"pyFTS.data.sunspots":{get_data:[5,1,1,""],get_dataframe:[5,1,1,""]},"pyFTS.distributed":{spark:[6,0,0,"-"]},"pyFTS.distributed.spark":{create_multivariate_model:[6,1,1,""],create_spark_conf:[6,1,1,""],create_univariate_model:[6,1,1,""],distributed_predict:[6,1,1,""],distributed_train:[6,1,1,""],get_clustered_partitioner:[6,1,1,""],get_partitioner:[6,1,1,""],get_variables:[6,1,1,""],share_parameters:[6,1,1,""],slave_forecast_multivariate:[6,1,1,""],slave_forecast_univariate:[6,1,1,""],slave_train_multivariate:[6,1,1,""],slave_train_univariate:[6,1,1,""]},"pyFTS.hyperparam":{Util:[7,0,0,"-"]},"pyFTS.hyperparam.Util":{create_hyperparam_tables:[7,1,1,""],insert_hyperparam:[7,1,1,""],open_hyperparam_db:[7,1,1,""]},"pyFTS.models":{chen:[8,0,0,"-"],cheng:[8,0,0,"-"],ensemble:[9,0,0,"-"],hofts:[8,0,0,"-"],hwang:[8,0,0,"-"],ifts:[8,0,0,"-"],incremental:[10,0,0,"-"],ismailefendi:[8,0,0,"-"],multivariate:[11,0,0,"-"],nonstationary:[12,0,0,"-"],pwfts:[8,0,0,"-"],sadaei:[8,0,0,"-"],seasonal:[13,0,0,"-"],song:[8,0,0,"-"],yu:[8,0,0,"-"]},"pyFTS.models.chen":{ConventionalFLRG:[8,2,1,""],ConventionalFTS:[8,2,1,""]},"pyFTS.models.chen.ConventionalFLRG":{append_rhs:[8,3,1,""],get_key:[8,3,1,""]},"pyFTS.models.chen.ConventionalFTS":{forecast:[8,3,1,""],generate_flrg:[8,3,1,""],train:[8,3,1,""]},"pyFTS.models.cheng":{TrendWeightedFLRG:[8,2,1,""],TrendWeightedFTS:[8,2,1,""]},"pyFTS.models.cheng.TrendWeightedFLRG":{weights:[8,3,1,""]},"pyFTS.models.cheng.TrendWeightedFTS":{generate_FLRG:[8,3,1,""]},"pyFTS.models.ensemble":{ensemble:[9,0,0,"-"],multiseasonal:[9,0,0,"-"]},"pyFTS.models.ensemble.ensemble":{AllMethodEnsembleFTS:[9,2,1,""],EnsembleFTS:[9,2,1,""],sampler:[9,1,1,""]},"pyFTS.models.ensemble.ensemble.AllMethodEnsembleFTS":{set_transformations:[9,3,1,""],train:[9,3,1,""]},"pyFTS.models.ensemble.ensemble.EnsembleFTS":{alpha:[9,4,1,""],append_model:[9,3,1,""],forecast:[9,3,1,""],forecast_ahead_distribution:[9,3,1,""],forecast_ahead_interval:[9,3,1,""],forecast_distribution:[9,3,1,""],forecast_interval:[9,3,1,""],get_distribution_interquantile:[9,3,1,""],get_interval:[9,3,1,""],get_models_forecasts:[9,3,1,""],get_point:[9,3,1,""],interval_method:[9,4,1,""],models:[9,4,1,""],parameters:[9,4,1,""],point_method:[9,4,1,""],train:[9,3,1,""]},"pyFTS.models.ensemble.multiseasonal":{SeasonalEnsembleFTS:[9,2,1,""],train_individual_model:[9,1,1,""]},"pyFTS.models.ensemble.multiseasonal.SeasonalEnsembleFTS":{forecast_distribution:[9,3,1,""],train:[9,3,1,""],update_uod:[9,3,1,""]},"pyFTS.models.hofts":{HighOrderFLRG:[8,2,1,""],HighOrderFTS:[8,2,1,""],WeightedHighOrderFLRG:[8,2,1,""],WeightedHighOrderFTS:[8,2,1,""]},"pyFTS.models.hofts.HighOrderFLRG":{append_lhs:[8,3,1,""],append_rhs:[8,3,1,""]},"pyFTS.models.hofts.HighOrderFTS":{configure_lags:[8,3,1,""],forecast:[8,3,1,""],generate_flrg:[8,3,1,""],generate_flrg_fuzzyfied:[8,3,1,""],generate_lhs_flrg:[8,3,1,""],generate_lhs_flrg_fuzzyfied:[8,3,1,""],train:[8,3,1,""]},"pyFTS.models.hofts.WeightedHighOrderFLRG":{append_lhs:[8,3,1,""],append_rhs:[8,3,1,""],get_lower:[8,3,1,""],get_midpoint:[8,3,1,""],get_upper:[8,3,1,""],weights:[8,3,1,""]},"pyFTS.models.hofts.WeightedHighOrderFTS":{generate_lhs_flrg_fuzzyfied:[8,3,1,""]},"pyFTS.models.hwang":{HighOrderFTS:[8,2,1,""]},"pyFTS.models.hwang.HighOrderFTS":{configure_lags:[8,3,1,""],forecast:[8,3,1,""],train:[8,3,1,""]},"pyFTS.models.ifts":{IntervalFTS:[8,2,1,""]},"pyFTS.models.ifts.IntervalFTS":{forecast_interval:[8,3,1,""],get_lower:[8,3,1,""],get_sequence_membership:[8,3,1,""],get_upper:[8,3,1,""]},"pyFTS.models.incremental":{IncrementalEnsemble:[10,0,0,"-"],TimeVariant:[10,0,0,"-"]},"pyFTS.models.incremental.IncrementalEnsemble":{IncrementalEnsembleFTS:[10,2,1,""]},"pyFTS.models.incremental.IncrementalEnsemble.IncrementalEnsembleFTS":{batch_size:[10,4,1,""],forecast:[10,3,1,""],fts_method:[10,4,1,""],fts_params:[10,4,1,""],num_models:[10,4,1,""],partitioner_method:[10,4,1,""],partitioner_params:[10,4,1,""],train:[10,3,1,""],window_length:[10,4,1,""]},"pyFTS.models.incremental.TimeVariant":{Retrainer:[10,2,1,""]},"pyFTS.models.incremental.TimeVariant.Retrainer":{auto_update:[10,4,1,""],batch_size:[10,4,1,""],forecast:[10,3,1,""],fts_method:[10,4,1,""],fts_params:[10,4,1,""],model:[10,4,1,""],partitioner:[10,4,1,""],partitioner_method:[10,4,1,""],partitioner_params:[10,4,1,""],train:[10,3,1,""],window_length:[10,4,1,""]},"pyFTS.models.ismailefendi":{ImprovedWeightedFLRG:[8,2,1,""],ImprovedWeightedFTS:[8,2,1,""]},"pyFTS.models.ismailefendi.ImprovedWeightedFLRG":{append_rhs:[8,3,1,""],weights:[8,3,1,""]},"pyFTS.models.ismailefendi.ImprovedWeightedFTS":{forecast:[8,3,1,""],generate_flrg:[8,3,1,""],train:[8,3,1,""]},"pyFTS.models.multivariate":{FLR:[11,0,0,"-"],cmvfts:[11,0,0,"-"],common:[11,0,0,"-"],flrg:[11,0,0,"-"],granular:[11,0,0,"-"],grid:[11,0,0,"-"],mvfts:[11,0,0,"-"],variable:[11,0,0,"-"],wmvfts:[11,0,0,"-"]},"pyFTS.models.multivariate.FLR":{FLR:[11,2,1,""]},"pyFTS.models.multivariate.FLR.FLR":{set_lhs:[11,3,1,""],set_rhs:[11,3,1,""]},"pyFTS.models.multivariate.cmvfts":{ClusteredMVFTS:[11,2,1,""]},"pyFTS.models.multivariate.cmvfts.ClusteredMVFTS":{check_data:[11,3,1,""],forecast:[11,3,1,""],forecast_ahead_multivariate:[11,3,1,""],forecast_multivariate:[11,3,1,""],fts_method:[11,4,1,""],fts_params:[11,4,1,""],fuzzyfy:[11,3,1,""],model:[11,4,1,""],train:[11,3,1,""]},"pyFTS.models.multivariate.common":{MultivariateFuzzySet:[11,2,1,""],fuzzyfy_instance:[11,1,1,""],fuzzyfy_instance_clustered:[11,1,1,""]},"pyFTS.models.multivariate.common.MultivariateFuzzySet":{append_set:[11,3,1,""],membership:[11,3,1,""],set_target_variable:[11,3,1,""]},"pyFTS.models.multivariate.flrg":{FLRG:[11,2,1,""]},"pyFTS.models.multivariate.flrg.FLRG":{append_rhs:[11,3,1,""],get_lower:[11,3,1,""],get_membership:[11,3,1,""],get_upper:[11,3,1,""],set_lhs:[11,3,1,""]},"pyFTS.models.multivariate.granular":{GranularWMVFTS:[11,2,1,""]},"pyFTS.models.multivariate.granular.GranularWMVFTS":{model:[11,4,1,""],train:[11,3,1,""]},"pyFTS.models.multivariate.grid":{GridCluster:[11,2,1,""],IncrementalGridCluster:[11,2,1,""]},"pyFTS.models.multivariate.grid.GridCluster":{build:[11,3,1,""]},"pyFTS.models.multivariate.grid.IncrementalGridCluster":{fuzzyfy:[11,3,1,""],incremental_search:[11,3,1,""],prune:[11,3,1,""]},"pyFTS.models.multivariate.mvfts":{MVFTS:[11,2,1,""],product_dict:[11,1,1,""]},"pyFTS.models.multivariate.mvfts.MVFTS":{append_variable:[11,3,1,""],apply_transformations:[11,3,1,""],clone_parameters:[11,3,1,""],forecast:[11,3,1,""],forecast_ahead:[11,3,1,""],forecast_interval:[11,3,1,""],format_data:[11,3,1,""],generate_flrg:[11,3,1,""],generate_flrs:[11,3,1,""],generate_lhs_flrs:[11,3,1,""],train:[11,3,1,""]},"pyFTS.models.multivariate.variable":{Variable:[11,2,1,""]},"pyFTS.models.multivariate.variable.Variable":{alias:[11,4,1,""],alpha_cut:[11,4,1,""],apply_inverse_transformations:[11,3,1,""],apply_transformations:[11,3,1,""],build:[11,3,1,""],data_label:[11,4,1,""],data_type:[11,4,1,""],mask:[11,4,1,""],name:[11,4,1,""],partitioner:[11,4,1,""],transformation:[11,4,1,""]},"pyFTS.models.multivariate.wmvfts":{WeightedFLRG:[11,2,1,""],WeightedMVFTS:[11,2,1,""]},"pyFTS.models.multivariate.wmvfts.WeightedFLRG":{append_rhs:[11,3,1,""],get_lower:[11,3,1,""],get_midpoint:[11,3,1,""],get_upper:[11,3,1,""],weights:[11,3,1,""]},"pyFTS.models.multivariate.wmvfts.WeightedMVFTS":{generate_flrg:[11,3,1,""]},"pyFTS.models.nonstationary":{common:[12,0,0,"-"],cvfts:[12,0,0,"-"],flrg:[12,0,0,"-"],honsfts:[12,0,0,"-"],nsfts:[12,0,0,"-"],partitioners:[12,0,0,"-"],perturbation:[12,0,0,"-"],util:[12,0,0,"-"]},"pyFTS.models.nonstationary.common":{FuzzySet:[12,2,1,""],check_bounds:[12,1,1,""],check_bounds_index:[12,1,1,""],fuzzify:[12,1,1,""],fuzzySeries:[12,1,1,""],window_index:[12,1,1,""]},"pyFTS.models.nonstationary.common.FuzzySet":{get_lower:[12,3,1,""],get_midpoint:[12,3,1,""],get_upper:[12,3,1,""],location:[12,4,1,""],location_params:[12,4,1,""],membership:[12,3,1,""],noise:[12,4,1,""],noise_params:[12,4,1,""],perform_location:[12,3,1,""],perform_width:[12,3,1,""],perturbate_parameters:[12,3,1,""],width:[12,4,1,""],width_params:[12,4,1,""]},"pyFTS.models.nonstationary.cvfts":{ConditionalVarianceFTS:[12,2,1,""],HighOrderNonstationaryFLRG:[12,2,1,""]},"pyFTS.models.nonstationary.cvfts.ConditionalVarianceFTS":{forecast:[12,3,1,""],forecast_interval:[12,3,1,""],generate_flrg:[12,3,1,""],perturbation_factors:[12,3,1,""],perturbation_factors__old:[12,3,1,""],train:[12,3,1,""]},"pyFTS.models.nonstationary.cvfts.HighOrderNonstationaryFLRG":{append_lhs:[12,3,1,""],append_rhs:[12,3,1,""]},"pyFTS.models.nonstationary.flrg":{NonStationaryFLRG:[12,2,1,""]},"pyFTS.models.nonstationary.flrg.NonStationaryFLRG":{get_key:[12,3,1,""],get_lower:[12,3,1,""],get_membership:[12,3,1,""],get_midpoint:[12,3,1,""],get_upper:[12,3,1,""],unpack_args:[12,3,1,""]},"pyFTS.models.nonstationary.honsfts":{HighOrderNonStationaryFLRG:[12,2,1,""],HighOrderNonStationaryFTS:[12,2,1,""]},"pyFTS.models.nonstationary.honsfts.HighOrderNonStationaryFLRG":{append_lhs:[12,3,1,""],append_rhs:[12,3,1,""]},"pyFTS.models.nonstationary.honsfts.HighOrderNonStationaryFTS":{forecast:[12,3,1,""],forecast_interval:[12,3,1,""],generate_flrg:[12,3,1,""],train:[12,3,1,""]},"pyFTS.models.nonstationary.nsfts":{ConventionalNonStationaryFLRG:[12,2,1,""],NonStationaryFTS:[12,2,1,""]},"pyFTS.models.nonstationary.nsfts.ConventionalNonStationaryFLRG":{append_rhs:[12,3,1,""],get_key:[12,3,1,""]},"pyFTS.models.nonstationary.nsfts.NonStationaryFTS":{conditional_perturbation_factors:[12,3,1,""],forecast:[12,3,1,""],forecast_interval:[12,3,1,""],generate_flrg:[12,3,1,""],train:[12,3,1,""]},"pyFTS.models.nonstationary.partitioners":{PolynomialNonStationaryPartitioner:[12,2,1,""],SimpleNonStationaryPartitioner:[12,2,1,""],simplenonstationary_gridpartitioner_builder:[12,1,1,""]},"pyFTS.models.nonstationary.partitioners.PolynomialNonStationaryPartitioner":{build:[12,3,1,""],get_polynomial_perturbations:[12,3,1,""],poly_width:[12,3,1,""],scale_down:[12,3,1,""],scale_up:[12,3,1,""]},"pyFTS.models.nonstationary.partitioners.SimpleNonStationaryPartitioner":{build:[12,3,1,""]},"pyFTS.models.nonstationary.perturbation":{exponential:[12,1,1,""],linear:[12,1,1,""],periodic:[12,1,1,""],polynomial:[12,1,1,""]},"pyFTS.models.nonstationary.util":{plot_sets:[12,1,1,""],plot_sets_conditional:[12,1,1,""]},"pyFTS.models.pwfts":{ProbabilisticWeightedFLRG:[8,2,1,""],ProbabilisticWeightedFTS:[8,2,1,""],visualize_distributions:[8,1,1,""]},"pyFTS.models.pwfts.ProbabilisticWeightedFLRG":{append_rhs:[8,3,1,""],get_lower:[8,3,1,""],get_membership:[8,3,1,""],get_midpoint:[8,3,1,""],get_upper:[8,3,1,""],lhs_conditional_probability:[8,3,1,""],partition_function:[8,3,1,""],rhs_conditional_probability:[8,3,1,""],rhs_unconditional_probability:[8,3,1,""]},"pyFTS.models.pwfts.ProbabilisticWeightedFTS":{add_new_PWFLGR:[8,3,1,""],flrg_lhs_conditional_probability:[8,3,1,""],flrg_lhs_unconditional_probability:[8,3,1,""],flrg_rhs_conditional_probability:[8,3,1,""],forecast:[8,3,1,""],forecast_ahead:[8,3,1,""],forecast_ahead_distribution:[8,3,1,""],forecast_ahead_interval:[8,3,1,""],forecast_distribution:[8,3,1,""],forecast_interval:[8,3,1,""],generate_flrg:[8,3,1,""],generate_lhs_flrg:[8,3,1,""],generate_lhs_flrg_fuzzyfied:[8,3,1,""],get_lower:[8,3,1,""],get_midpoint:[8,3,1,""],get_upper:[8,3,1,""],interval_heuristic:[8,3,1,""],interval_quantile:[8,3,1,""],point_expected_value:[8,3,1,""],point_heuristic:[8,3,1,""],train:[8,3,1,""],update_model:[8,3,1,""]},"pyFTS.models.sadaei":{ExponentialyWeightedFLRG:[8,2,1,""],ExponentialyWeightedFTS:[8,2,1,""]},"pyFTS.models.sadaei.ExponentialyWeightedFLRG":{append_rhs:[8,3,1,""],weights:[8,3,1,""]},"pyFTS.models.sadaei.ExponentialyWeightedFTS":{forecast:[8,3,1,""],generate_flrg:[8,3,1,""],train:[8,3,1,""]},"pyFTS.models.seasonal":{SeasonalIndexer:[13,0,0,"-"],cmsfts:[13,0,0,"-"],common:[13,0,0,"-"],msfts:[13,0,0,"-"],partitioner:[13,0,0,"-"],sfts:[13,0,0,"-"]},"pyFTS.models.seasonal.SeasonalIndexer":{DataFrameSeasonalIndexer:[13,2,1,""],DateTimeSeasonalIndexer:[13,2,1,""],LinearSeasonalIndexer:[13,2,1,""],SeasonalIndexer:[13,2,1,""]},"pyFTS.models.seasonal.SeasonalIndexer.DataFrameSeasonalIndexer":{get_data:[13,3,1,""],get_data_by_season:[13,3,1,""],get_index_by_season:[13,3,1,""],get_season_by_index:[13,3,1,""],get_season_of_data:[13,3,1,""],set_data:[13,3,1,""]},"pyFTS.models.seasonal.SeasonalIndexer.DateTimeSeasonalIndexer":{get_data:[13,3,1,""],get_data_by_season:[13,3,1,""],get_index:[13,3,1,""],get_index_by_season:[13,3,1,""],get_season_by_index:[13,3,1,""],get_season_of_data:[13,3,1,""],set_data:[13,3,1,""]},"pyFTS.models.seasonal.SeasonalIndexer.LinearSeasonalIndexer":{get_data:[13,3,1,""],get_index_by_season:[13,3,1,""],get_season_by_index:[13,3,1,""],get_season_of_data:[13,3,1,""]},"pyFTS.models.seasonal.SeasonalIndexer.SeasonalIndexer":{get_data:[13,3,1,""],get_data_by_season:[13,3,1,""],get_index:[13,3,1,""],get_index_by_season:[13,3,1,""],get_season_by_index:[13,3,1,""],get_season_of_data:[13,3,1,""]},"pyFTS.models.seasonal.cmsfts":{ContextualMultiSeasonalFTS:[13,2,1,""],ContextualSeasonalFLRG:[13,2,1,""]},"pyFTS.models.seasonal.cmsfts.ContextualMultiSeasonalFTS":{forecast:[13,3,1,""],forecast_ahead:[13,3,1,""],generate_flrg:[13,3,1,""],get_midpoints:[13,3,1,""],train:[13,3,1,""]},"pyFTS.models.seasonal.cmsfts.ContextualSeasonalFLRG":{append_rhs:[13,3,1,""]},"pyFTS.models.seasonal.common":{DateTime:[13,2,1,""],FuzzySet:[13,2,1,""],strip_datepart:[13,1,1,""]},"pyFTS.models.seasonal.common.DateTime":{day_of_month:[13,4,1,""],day_of_week:[13,4,1,""],day_of_year:[13,4,1,""],half:[13,4,1,""],hour:[13,4,1,""],hour_of_month:[13,4,1,""],hour_of_week:[13,4,1,""],hour_of_year:[13,4,1,""],minute:[13,4,1,""],minute_of_day:[13,4,1,""],minute_of_month:[13,4,1,""],minute_of_week:[13,4,1,""],minute_of_year:[13,4,1,""],month:[13,4,1,""],quarter:[13,4,1,""],second_of_day:[13,4,1,""],second_of_hour:[13,4,1,""],second_of_minute:[13,4,1,""],sixth:[13,4,1,""],third:[13,4,1,""],year:[13,4,1,""]},"pyFTS.models.seasonal.common.FuzzySet":{transform:[13,3,1,""]},"pyFTS.models.seasonal.msfts":{MultiSeasonalFTS:[13,2,1,""]},"pyFTS.models.seasonal.msfts.MultiSeasonalFTS":{forecast:[13,3,1,""],forecast_ahead:[13,3,1,""],generate_flrg:[13,3,1,""],train:[13,3,1,""]},"pyFTS.models.seasonal.partitioner":{TimeGridPartitioner:[13,2,1,""]},"pyFTS.models.seasonal.partitioner.TimeGridPartitioner":{build:[13,3,1,""],build_index:[13,3,1,""],mask:[13,4,1,""],plot:[13,3,1,""],search:[13,3,1,""],season:[13,4,1,""]},"pyFTS.models.seasonal.sfts":{SeasonalFLRG:[13,2,1,""],SeasonalFTS:[13,2,1,""]},"pyFTS.models.seasonal.sfts.SeasonalFLRG":{append_rhs:[13,3,1,""],get_key:[13,3,1,""]},"pyFTS.models.seasonal.sfts.SeasonalFTS":{forecast:[13,3,1,""],generate_flrg:[13,3,1,""],get_midpoints:[13,3,1,""],train:[13,3,1,""]},"pyFTS.models.song":{ConventionalFTS:[8,2,1,""]},"pyFTS.models.song.ConventionalFTS":{flr_membership_matrix:[8,3,1,""],forecast:[8,3,1,""],operation_matrix:[8,3,1,""],train:[8,3,1,""]},"pyFTS.models.yu":{WeightedFLRG:[8,2,1,""],WeightedFTS:[8,2,1,""]},"pyFTS.models.yu.WeightedFLRG":{append_rhs:[8,3,1,""],weights:[8,3,1,""]},"pyFTS.models.yu.WeightedFTS":{forecast:[8,3,1,""],generate_FLRG:[8,3,1,""],train:[8,3,1,""]},"pyFTS.partitioners":{CMeans:[14,0,0,"-"],Entropy:[14,0,0,"-"],FCM:[14,0,0,"-"],Grid:[14,0,0,"-"],Huarng:[14,0,0,"-"],Simple:[14,0,0,"-"],Singleton:[14,0,0,"-"],Util:[14,0,0,"-"],parallel_util:[14,0,0,"-"],partitioner:[14,0,0,"-"]},"pyFTS.partitioners.CMeans":{CMeansPartitioner:[14,2,1,""],c_means:[14,1,1,""],distance:[14,1,1,""]},"pyFTS.partitioners.CMeans.CMeansPartitioner":{build:[14,3,1,""]},"pyFTS.partitioners.Entropy":{EntropyPartitioner:[14,2,1,""],PMF:[14,1,1,""],bestSplit:[14,1,1,""],entropy:[14,1,1,""],informationGain:[14,1,1,""],splitAbove:[14,1,1,""],splitBelow:[14,1,1,""]},"pyFTS.partitioners.Entropy.EntropyPartitioner":{build:[14,3,1,""]},"pyFTS.partitioners.FCM":{FCMPartitioner:[14,2,1,""],fuzzy_cmeans:[14,1,1,""],fuzzy_distance:[14,1,1,""],membership:[14,1,1,""]},"pyFTS.partitioners.FCM.FCMPartitioner":{build:[14,3,1,""]},"pyFTS.partitioners.Grid":{GridPartitioner:[14,2,1,""]},"pyFTS.partitioners.Grid.GridPartitioner":{build:[14,3,1,""]},"pyFTS.partitioners.Huarng":{HuarngPartitioner:[14,2,1,""]},"pyFTS.partitioners.Huarng.HuarngPartitioner":{build:[14,3,1,""]},"pyFTS.partitioners.Simple":{SimplePartitioner:[14,2,1,""]},"pyFTS.partitioners.Simple.SimplePartitioner":{append:[14,3,1,""],append_complex:[14,3,1,""]},"pyFTS.partitioners.Singleton":{SingletonPartitioner:[14,2,1,""]},"pyFTS.partitioners.Singleton.SingletonPartitioner":{build:[14,3,1,""]},"pyFTS.partitioners.Util":{explore_partitioners:[14,1,1,""],plot_partitioners:[14,1,1,""],plot_sets:[14,1,1,""]},"pyFTS.partitioners.parallel_util":{explore_partitioners:[14,1,1,""]},"pyFTS.partitioners.partitioner":{Partitioner:[14,2,1,""]},"pyFTS.partitioners.partitioner.Partitioner":{build:[14,3,1,""],build_index:[14,3,1,""],check_bounds:[14,3,1,""],extractor:[14,4,1,""],fuzzyfy:[14,3,1,""],get_name:[14,3,1,""],kdtree:[14,4,1,""],lower_set:[14,3,1,""],membership_function:[14,4,1,""],name:[14,4,1,""],ordered_sets:[14,4,1,""],partitions:[14,4,1,""],plot:[14,3,1,""],plot_set:[14,3,1,""],prefix:[14,4,1,""],search:[14,3,1,""],setnames:[14,4,1,""],transformation:[14,4,1,""],type:[14,4,1,""],upper_set:[14,3,1,""],variable:[14,4,1,""]},"pyFTS.probabilistic":{ProbabilityDistribution:[15,0,0,"-"],kde:[15,0,0,"-"]},"pyFTS.probabilistic.ProbabilityDistribution":{ProbabilityDistribution:[15,2,1,""]},"pyFTS.probabilistic.ProbabilityDistribution.ProbabilityDistribution":{append:[15,3,1,""],append_interval:[15,3,1,""],averageloglikelihood:[15,3,1,""],bins:[15,4,1,""],build_cdf_qtl:[15,3,1,""],crossentropy:[15,3,1,""],cumulative:[15,3,1,""],density:[15,3,1,""],differential_offset:[15,3,1,""],empiricalloglikelihood:[15,3,1,""],entropy:[15,3,1,""],expected_value:[15,3,1,""],kullbackleiblerdivergence:[15,3,1,""],labels:[15,4,1,""],plot:[15,3,1,""],pseudologlikelihood:[15,3,1,""],quantile:[15,3,1,""],set:[15,3,1,""],type:[15,4,1,""],uod:[15,4,1,""]},"pyFTS.probabilistic.kde":{KernelSmoothing:[15,2,1,""]},"pyFTS.probabilistic.kde.KernelSmoothing":{h:[15,4,1,""],kernel:[15,4,1,""],kernel_function:[15,3,1,""],probability:[15,3,1,""]},pyFTS:{benchmarks:[3,0,0,"-"],common:[4,0,0,"-"],conf:[2,0,0,"-"],data:[5,0,0,"-"],distributed:[6,0,0,"-"],hyperparam:[7,0,0,"-"],models:[8,0,0,"-"],partitioners:[14,0,0,"-"],probabilistic:[15,0,0,"-"]}},objnames:{"0":["py","module","Python module"],"1":["py","function","Python function"],"2":["py","class","Python class"],"3":["py","method","Python method"],"4":["py","attribute","Python attribute"]},objtypes:{"0":"py:module","1":"py:function","2":"py:class","3":"py:method","4":"py:attribute"},terms:{"261459a0":5,"57a":5,"5egspc":5,"boolean":[3,4,14],"case":4,"class":[3,4,5,8,9,10,11,12,13,14,15,16],"default":[3,4,5],"enum":13,"fa\u00e7ad":[3,4],"final":[4,5],"float":[3,4,5],"function":[3,4,7,12,13,14,15,16],"guimar\u00e3":[0,8],"h\u00e9non":5,"import":[4,11,16],"int":[8,16],"na\u00efv":3,"new":[4,9,10,11,14],"organiza\u00e7\u00e3o":5,"petr\u00f4nio":8,"r\u00f6ssler":5,"return":[3,4,5,6,7,8,9,10,11,12,13,14,15],"short":[4,8,16],"true":[3,4,5,10,11],"try":4,"var":[5,11],"while":4,And:3,FTS:[0,3,4,7,8,9,10,11,12,13],For:3,LHS:[4,8,12],One:14,RHS:[4,8,11,12],The:[3,4,5,7,9,10,11,14,15,16],Then:[3,16],There:16,These:[0,16],Use:13,abdullah:[8,16],acc:4,accept:4,accord:[11,14],account:15,accuraci:[3,7],acf:3,actual:[4,15],adapt:4,adaptiveexpect:4,add:[3,4,12],add_new_pwflgr:8,added:[4,5],adding:4,addit:5,address:[3,4],affect:12,after:5,age:4,aged:4,aggreg:[4,9],ahead:[3,4,8,9,10,11,12,13,16],ahed:16,airlin:5,airpasseng:[1,2],alabama:5,alia:[3,4,11],all:[3,4,9,11,14,15,16],allmethodensembleft:9,almost:16,alpha:[4,7,8,9,13],alpha_cut:[4,11,14],alreadi:5,also:[0,4,16],ambientai:5,analysi:3,analytic_tabular_datafram:3,analytical_data_column:3,angela:4,anonym:14,anoth:10,api:[0,4],app:6,append:[4,9,11,14,15],append_complex:14,append_interv:15,append_lh:[8,12],append_log:4,append_model:9,append_rh:[4,8,11,12,13],append_rul:4,append_set:[4,11],append_transform:4,append_vari:11,appendchild:4,appl:[8,14,16],appli:[3,4,11,14,15],apply_inverse_transform:[4,11],apply_transform:[4,11],approach:[3,14,16],arg:12,argument:[3,4,14],arima:[1,2],arima_model:3,around:4,arrai:[4,5,12,13],artifici:[1,2],ascend:3,aspx:5,assert:15,assign:[4,15],assoc:3,associ:5,ata:3,atmospher:5,atribut:3,attibut:4,attractor:5,auto:14,auto_upd:[4,10],autocorrel:3,autom:5,automat:4,auxiliar:4,auxiliari:15,averag:[3,5,15],averageloglikelihood:15,avg:5,axes:12,axi:[3,4,14,15],azim:3,bar:3,base:[3,4,5,8,9,10,11,12,13,14,15,16],base_dataframe_column:3,batch:[4,10],batch_sav:4,batch_siz:10,befor:16,begin:4,being:3,bell:4,bellmf:4,belo:[0,5],belog:4,below:16,benchmark:[1,2,4,7],benchmark_method:3,benchmark_methods_paramet:3,benchmark_model:3,benchmark_onli:4,bestsplit:14,better:16,between:[4,10,15],bill:4,bin:[3,15],bisect:4,bitcoin:[1,2],bivari:5,black:15,blip:5,blue:4,both:[4,11,14],bound:[4,5,8,11,12,14],box:[3,4,16],boxcox:4,boxljungstatist:3,boxpiercestatist:3,brasil:5,brasilia:5,brazil:[0,9],brazilian:[0,9],brier:3,brier_scor:3,btc:5,build:[10,11,12,13,14],build_cdf_qtl:15,build_index:[13,14],build_method:3,build_tree_without_ord:4,built:[5,14],buseco:5,busi:5,c_mean:14,calcul:[4,11,12],call:[4,10,11],camwa:14,can:[3,4,16],cancel:5,capabl:3,capit:5,cartesian:11,cast_dataframe_to_synthet:3,cast_dataframe_to_synthetic_interv:3,cast_dataframe_to_synthetic_point:3,cast_dataframe_to_synthetic_probabilist:3,ccst:5,center:4,centroid:[4,13],certain:15,chain:5,chang:[5,14,16],chao:5,chaotic:[1,2],characterist:16,cheap:0,check:[4,5,14,16],check_bound:[4,12,14],check_bounds_index:[4,12],check_data:11,check_ignore_list:3,check_replace_list:3,chen:[1,2,11,13,16],cheng:[1,2,14,16],chi:3,chi_squar:3,chia:8,child:4,chissom:[8,16],clear:4,clip:4,clone:16,clone_paramet:[4,11],closest:14,cluster:[3,4,11],clusteredmvft:11,cmap:4,cmean:[1,2],cmeanspartition:[14,16],cmsft:[2,8],cmvft:[2,8],code:[11,16],coeffici:[3,5],colab:16,colabor:0,color:[3,4,12,15],colormap:4,column:[4,11],columun:4,com:[5,16],combin:11,common:[1,2,3,6,7,8,9,10,14,16],commun:5,compar:[3,4],compare_residu:3,comparemodelsplot:3,comparemodelst:3,complet:5,complex:5,complic:5,compon:[5,9],composit:[1,2,5,11],compress:5,comput:[8,9,14,16],computation:0,condens:3,condit:3,conditional_perturbation_factor:12,conditionalvarianceft:12,conf:[0,1],confer:8,configure_lag:8,congress:9,conn:[3,7],connect:[3,7],consid:[4,11,14],const_t:12,constant:5,contain:[3,4,11,14,16],content:[0,1],context:[6,14],contextu:13,contextualmultiseasonalft:13,contextualseasonalflrg:13,contin:[10,15],continu:[3,5,15],control:5,convent:[8,12,13],conventionalflrg:8,conventionalft:[8,11],conventionalnonstationaryflrg:12,copi:4,cost:[14,16],count:[4,15],counter:14,covavg:3,coverag:3,covstd:3,cox:[4,16],creat:[3,4,5,7,9,11,14,16],create_benchmark_t:3,create_hyperparam_t:7,create_multivariate_model:6,create_spark_conf:6,create_univariate_model:6,criteria:3,cross:[4,15],crossentropi:15,crp:3,crps1avg:3,crps1std:3,crps2avg:3,crps2std:3,crps_distr:3,crps_interv:3,crpsavg:3,crpsstd:3,csv:5,cumul:15,current:[3,5],current_milli_tim:4,cut:[4,7],cvft:[2,8],dado:[4,5,14],dai:5,daili:5,data:[0,1,2,3,4,6,7,8,9,10,11,12,13,14,15,16],data_column:3,data_field:13,data_label:11,data_point:11,data_typ:11,databas:[3,7],datafram:[3,4,5,11,13],dataframeseasonalindex:13,dataset:[1,2,3,4,7],date:[3,13],date_field:13,date_part:13,datepart:13,datetim:13,datetimeseasonalindex:13,david:4,day_of_month:13,day_of_week:13,day_of_year:13,dealer:5,dec:14,decemb:5,decis:3,decompress:5,defin:[3,7],defuzzyf:16,deg:12,delet:4,deltadist:14,demand:11,demo:16,densiti:[3,4,15],departa:0,depend:[3,4,11,14,16],dependeci:4,deri:[8,16],design:[3,4,7,13,14],detail:4,determin:3,determinist:[5,14],develop:[0,16],deviat:3,dict:[3,4],dictionari:[3,4],differenti:[4,5,15,16],differential_offset:15,diffus:[8,16],dill:4,dimension:5,directli:[4,16],discours:[3,4,11,12,13,14,15,16],discret:15,disk:[4,14],dispi:[1,2,3,4],displac:12,displai:3,distanc:[3,14],distribut:[1,2,3,4,5,8,9,15],distributed_predict:6,distributed_train:6,diverg:15,dji:5,dkl:15,dnf:5,document:0,doi10:8,doi:[0,3,5,14],dollar:[8,16],don:5,dow:5,dowjon:[1,2],download:5,draw_sets_on_axi:4,dure:[3,4],dynam:5,each:[3,4,5,9,10,11,16],easi:[0,4],easier:4,edu:5,edward:5,efendi:[8,16],effect:[14,16],effici:4,electr:[0,8,16],eletr:5,elev:3,empir:[14,15],empiricalloglikelihood:15,emul:5,enayatifar:[8,16],end:12,endogen:11,energi:[8,16],engin:0,enrol:[1,2,8,13,16],ensembl:[1,2,4,8,10],ensembleft:[9,10],entir:4,entropi:[1,2,15,16],entropypartition:[14,16],enumerate2:4,environ:4,epanechnikov:15,equal:[3,4,8,9,10,11,12,13,16],equat:5,error:3,espaciai:5,esrl:5,estim:[3,15],etc:[4,16],eth:5,ethereum:[1,2],eur:[1,2],eurgbp:5,eurusd:5,even:[13,14],evolutionari:[1,2],exact:4,exampl:0,except:4,exchang:[5,8,16],execut:3,exist:5,expect:[4,8,15],expected_valu:15,experi:3,expert:[0,8,16],explain:[4,8],explanatory_vari:6,exploit:0,explore_partition:14,exponenti:[8,9,12,16],exponentiali:8,exponentialyweightedflrg:8,exponentialyweightedft:8,express:3,extens:11,extern:[3,4],externalforecast:3,externalmodel:3,extract:[3,5,14],extract_measur:3,extractor:14,extremum:9,facil:[3,4,5,7,14],fall:3,fals:[3,4,5,8,11,12,14],fcm:[1,2],fcmpartition:[14,16],feder:0,fetch:4,field:[5,13],fig:[4,12],figur:4,file:[3,4,5,12,14],file_analyt:3,file_path:4,file_synthet:3,filenam:[3,4,5],filenem:[3,7],filesystem:4,fill:4,filter:3,financ:5,find:[4,13,14],find_best:3,find_g:4,find_gt:4,find_l:4,find_lt:4,first:[3,4,8,12,13],fit:[3,4,8,9,10,11,12,13],five:4,flag:4,flashquot:5,flat:4,flow:5,flr:[1,2,8,12,13],flr_membership_matrix:8,flrg:[1,2,8,13],flrg_lhs_conditional_prob:8,flrg_lhs_unconditional_prob:8,flrg_rhs_conditional_prob:8,flrgtree:4,flrgtreenod:4,foreast:3,forecast:[3,4,8,9,10,11,12,13,14,16],forecast_ahead:[4,8,11,13],forecast_ahead_distribut:[3,4,8,9],forecast_ahead_interv:[3,4,8,9],forecast_ahead_multivari:[4,11],forecast_distribut:[3,4,8,9],forecast_interv:[3,4,8,9,11,12],forecast_multivari:[4,11],forex:5,fork:0,format:[3,7,11,13],format_data:11,forward:4,found:[4,16],frederico:[0,8],frequenc:15,from:[0,3,4,5,8,11,14,15,16],fset:[8,11],fts:[1,2,3,8,9,10,11,12,13],fts_method:[10,11],fts_param:[10,11],fuzz:8,fuzzi:[2,4,8,9,11,12,13,14],fuzzif:[14,16],fuzzifi:[4,12],fuzzy_cmean:14,fuzzy_dist:14,fuzzy_set:4,fuzzydata:4,fuzzyf:[4,11,14,16],fuzzyfi:[4,11,14],fuzzyfy_inst:[4,11],fuzzyfy_instance_clust:11,fuzzyfy_seri:4,fuzzyfy_series_old:4,fuzzyseri:12,fuzzyset:[1,2,8,11,12,13],gadelha:[0,8],gani:[8,16],garibaldi:12,gaussian:[4,5],gaussmf:4,gbp:[1,2],gbpusd:5,gcos_wgsp:5,gener:[1,2,4,14,16],generate_flr:11,generate_flrg:[8,11,12,13],generate_flrg_fuzzyfi:8,generate_gaussian_linear:5,generate_high_order_recurrent_flr:4,generate_indexed_flr:4,generate_lhs_flr:11,generate_lhs_flrg:8,generate_lhs_flrg_fuzzyfi:8,generate_linear_periodic_gaussian:5,generate_non_recurrent_flr:4,generate_recurrent_flr:4,generate_sinoidal_periodic_gaussian:5,generate_uniform_linear:5,gerai:0,get:[3,4,5],get_benchmark_interval_method:3,get_benchmark_point_method:3,get_benchmark_probabilistic_method:3,get_clustered_partition:6,get_data:[5,13],get_data_by_season:13,get_datafram:5,get_dataframe_from_bd:3,get_distribution_interquantil:9,get_distribution_statist:3,get_fuzzyset:4,get_index:13,get_index_by_season:13,get_interv:9,get_interval_method:3,get_interval_statist:3,get_kei:[4,8,12,13],get_low:[4,8,11,12],get_maximum_membership_fuzzyset:4,get_maximum_membership_fuzzyset_index:4,get_membership:[4,8,11,12],get_midpoint:[4,8,11,12,13],get_models_forecast:9,get_nam:14,get_partition:6,get_point:9,get_point_method:3,get_point_multivariate_method:3,get_point_statist:3,get_polynomial_perturb:12,get_probabilistic_method:3,get_season_by_index:13,get_season_of_data:13,get_sequence_membership:8,get_uod:4,get_upp:[4,8,11,12],get_vari:6,getchildren:4,getstr:4,git:16,github:[0,16],given:[3,4,11,12,14,15],glass:[1,2],good:16,googl:16,gov:5,grant_bound:4,granular:[2,8,13],granularwmvft:11,greater:[4,5],grid:[1,2,3,11,13],gridclust:11,gridpartition:[3,14,16],gridsearch:[1,2],group:[3,4,8,11,12,13],half:13,hand:4,handl:[4,8],hard:4,harmoni:[8,16],has_interval_forecast:4,has_point_forecast:4,has_probability_forecast:4,has_season:4,head:0,heavysid:3,heavyside_cdf:3,height:14,help:14,henon:[1,2],here:16,heteroskedast:12,high:[3,4,8,11,12],highorderflrg:8,highorderft:[8,12],highordernonstationaryflrg:12,highordernonstationaryft:12,histogram:15,histori:5,hoang:8,hoft:[1,2,12],hold:10,honsft:[2,8],horizon:[3,4],horizont:[0,5],hossein:8,hour:[3,13],hour_of_month:13,hour_of_week:13,hour_of_year:13,hourli:5,http:[0,5,16],huarng:[1,2,16],huarngpartition:[14,16],human:0,hwang:[1,2],hybrid:[8,16],hyndman:5,hyperparam:[1,2],hyperparamet:7,identif:13,identifi:[3,4,7,8,12,13],ieee:[8,12],ifmg:0,ifnmg:0,ift:[1,2],ignor:[3,13],imag:[4,14],implement:[4,13,16],improv:[8,14,16],improvedweightedflrg:8,improvedweightedft:8,inc:[3,4],increas:11,increment:[1,2,3,4,5,8,11,15],incremental_gaussian:5,incremental_search:11,incrementalensembl:[2,8],incrementalensembleft:10,incrementalgridclust:11,ind:13,indentifi:[3,7],index:[3,4,5,8,9,11,13,14],index_field:13,index_season:13,index_seri:5,indexedflr:4,indic:[3,4,5],inequ:3,infer:5,infil:3,inform:[3,4,14,15],informationgain:14,initi:[4,5],initial_valu:5,inmet:[1,2],innov:[8,16],inp:5,input:[4,8,11,12,14,15],insert:[3,4,5,7],insert_benchmark:3,insert_hyperparam:7,insert_right:4,insid:[3,4,13,14,15],inst:[4,12],instal:0,instanc:[5,11,12,14,16],instead:4,instituit:0,institut:0,instituto:5,integ:[3,4],integr:5,intel:[8,16],intellig:[8,9],intend:0,interfer:5,intern:8,internet:5,interpol:4,interpret:4,interv:[3,4,8,9,10,11,12,14,15,16],interval_dataframe_analytic_column:3,interval_dataframe_synthetic_column:3,interval_heurist:8,interval_method:9,interval_quantil:8,interval_to_interv:3,intervalar:16,intervalft:8,introduc:16,introspect:4,invers:[4,16],ipynb:16,is_clust:4,is_high_ord:4,is_multivari:4,is_wrapp:4,ismail:[8,16],ismailefendi:[1,2],isol:14,item:4,itemgett:4,iter:[4,5],its:[5,8,11,13,14,16],ixic:5,janeiro:9,januari:5,jaroszewski:12,javedani:8,jeng:8,job:3,johnson:11,jonathan:12,jone:[4,5],journal:5,jun:[14,16],jupyt:16,kde:[1,2],kdtree:14,kei:[3,4],kernel:15,kernel_funct:15,kernelsmooth:15,knearestneighbor:3,knn:[1,2],known:14,kullback:15,kullbackleiblerdiverg:15,kwarg:[3,4,5,6,8,9,10,11,12,13,14,15],lab:0,label:[3,4,15],lag:[4,5,7,16],lambda:4,largest:4,last:4,later:16,layman:0,lcolor:4,learn:10,lee:8,left:4,legend:[3,4],leibler:15,len_tot:4,length:[3,4,5,8,9,10,11,12,13,14,16],less:4,lett:5,level:4,lgd:4,lhs_conditional_prob:8,librari:[2,5],like:[4,16],likelihood:15,limit:4,lin:14,line:4,linear:[5,12],linearmodel:3,linearseasonalindex:13,linewidth:[3,4],linspac:5,list:[3,4,5,8,9,10,11,12,13,14,15,16],ljung:3,lo_param:3,load:[4,5,8,16],load_env:4,load_obj:4,local:5,locat:[4,5,12],location_param:12,log:[4,15],logic:[4,8,11,12,13],logist:[4,5],logistic_map:[1,2],look:4,lookup:4,lorentz:[1,2],lorenz:5,loss:3,lower:[4,5,8,11,12,14],lower_set:14,mackei:[1,2],mackey_glass:5,mai:5,main:16,malaysia:[1,2,8,16],mandatori:4,mani:16,manual:14,map:[4,5],mape:3,mape_interv:3,marcin:12,market:5,mask:[11,13],mass:4,match:4,math:[5,14],mathemat:5,matplotlib:[4,14],max:4,max_inc:5,max_ini:5,max_lag:[3,4,8,9,10,11,12,13],maxim:4,maximum:[4,5,11,14],mean:[3,4,5,9],measur:[1,2,7],mech:[8,16],median:9,membership:[1,2,7,8,11,12,14,16],membership_funct:14,memori:[4,10],merg:4,meta:[9,10,11],meteorologia:5,method:[0,3,4,5,7,8,9,10,11,12,13,14,16],metric:3,mft:3,middl:14,midpoint:[4,8,11,12],min:[4,15],min_inc:5,min_ini:5,min_ord:4,mina:0,mind:0,ming:8,minim:[3,4,8,9,10,11,12,13,14],minimum:[4,5,16],minut:13,minute_of_dai:13,minute_of_month:13,minute_of_week:13,minute_of_year:13,mix:9,mode:[4,11,14],model:[0,1,2,3,4,5,6,7,14,16],modelo:3,models_fo:3,models_ho:3,modul:[0,1,16],monash:5,monovari:4,month:13,monthli:[3,5],more:16,most:[10,11,16],move:3,msft:[2,8],mu_inc:5,mu_ini:5,mu_max:5,mu_min:5,much:4,multi:[3,4,8,11,13],multiseason:[2,8],multiseasonalft:13,multivari:[1,2,3,4,5,8,14],multivariatefuzzyset:11,multivariatepartition:11,musikasuwan:12,mvft:[2,8],nacion:5,naiv:[1,2],name:[3,4,5,7,9,11,12,13,14],nasdaq:[1,2],nation:5,nativ:[4,13],natur:5,nbin:[4,8],nbsp:0,ndata:[3,4,8,11,12],nearest:[3,13,14],need:4,neighbor:3,next:[4,16],nice:4,noaa:5,node:[3,4],nois:[5,12],noise_param:12,non:[3,4,5,12,13,16],none:[3,4,5,9,10,11,12,13,14,15],nonperiod:5,nonstationari:[1,2,4,8],nonstationaryflrg:12,nonstationaryft:12,norm:8,normal:[9,16],north:0,norton:5,notebook:16,noth:16,nov:[14,16],now:4,npart:[12,14],nsft:[2,8],num:5,num_batch:4,num_model:10,num_season:13,number:[3,4,5,7,8,9,10,11,13,14,15,16],numer:16,numpi:[4,5],obj:[3,4,14],object:[3,4,5,8,9,11,13,14,15],objectsist:3,occur:4,occurr:4,old:4,older:4,oldest:4,onc:4,one:[3,4,5,7,8,9,10,11,12,13,15,16],ones:4,onli:[4,11,14],onlin:10,only_lin:12,open:[3,7],open_benchmark_db:3,open_hyperparam_db:7,oper:[4,16],operation_matrix:8,option:[3,4,9,14],order:[3,4,7,8,11,12,13,14,16],ordered_set:[4,12,14],ordin:4,org:[0,5],origin:[3,4,16],original_max:4,original_min:4,oscil:5,other:[3,4,9,11],otherwis:3,out:16,outfil:3,outlier:5,output:[14,16],outsid:14,over:4,overlap:[13,14,16],own:11,p500:5,packag:[0,1],page:0,pair:5,panda:[3,4,5,11,13],par1:12,par2:12,parallel_util:[1,2],param:[3,4,5,11,12,13],paramet:[3,4,5,6,7,8,9,10,11,12,13,14,15,16],parametr:16,part:[6,12],partit:[3,4,7,11,12,13,14,16],partition:[1,2,3,4,7,8,9,10,16],partition_funct:[4,8],partitioner_method:10,partitioner_param:10,partitioners_method:3,partitioners_model:3,pass:4,passeng:5,past:4,path:[3,4,14],pattern:4,pct:12,pdf:15,percent:3,percentag:3,percentu:[3,4],perform:[3,7,11,12,13,14,16],perform_loc:12,perform_width:12,period:[5,12],periodic_gaussian:5,persist:4,persist_env:4,persist_obj:4,person:[4,5],pertub:12,perturb:[2,8],perturbate_paramet:12,perturbation_factor:12,perturbation_factors__old:12,pesquisa:5,pftsexploreorderandpartit:3,php:5,phy:[5,8,16],physiolog:5,pictur:[3,4],pierc:3,pinbal:3,pinball_mean:3,pip:16,plambda:4,plot:[3,4,13,14,15],plot_compared_intervals_ahead:4,plot_compared_seri:3,plot_dataframe_interv:3,plot_dataframe_interval_pinbal:3,plot_dataframe_point:3,plot_dataframe_probabilist:3,plot_density_rectang:4,plot_distribut:4,plot_interv:4,plot_partition:14,plot_point:3,plot_probability_distribut:4,plot_residu:3,plot_rul:4,plot_set:[12,14],plot_sets_condit:12,plotcompar:3,plotforecast:3,plotresidu:3,pmf:[4,14],pmf_to_cdf:3,point:[3,4,8,9,10,11,12,13,14,15,16],point_dataframe_analytic_column:3,point_dataframe_synthetic_column:3,point_expected_valu:8,point_heurist:8,point_method:9,point_to_interv:3,poit:4,poly_width:12,polynomi:12,polynomialnonstationarypartition:12,poor:5,por:3,posit:[4,13],post:4,posterior:3,postprocess:[4,16],power:[4,8,16],pprint:4,pre:[4,11],prebuilt:3,predict:[3,4,8,9,11,12,16],prefix:14,preprocess:[4,11,13,16],previou:5,primari:3,primit:14,print:3,print_distribution_statist:3,print_interval_statist:3,print_point_statist:3,probabil:3,probabilist:[1,2,3,4,8,9,16],probabilistic_dataframe_analytic_column:3,probabilistic_dataframe_synthetic_column:3,probabilisticweightedflrg:8,probabilisticweightedft:8,probabilitydist:4,probabilitydistribut:[1,2,3,4,8,9],probabl:[3,4,8,9,15],problem:8,procedur:[3,4],process:[3,4,5,11],process_common_data:3,process_interval_job:3,process_point_job:3,process_probabilistic_job:3,product:[5,8,11,16],product_dict:11,prof:0,progress:3,project:[14,16],propos:16,provid:[0,4,9,16],prune:11,psd:5,pseudo:15,pseudologlikelihood:15,pwflrg:8,pwft:[1,2],python:[2,16],q05:3,q25:3,q75:3,q95:3,quantil:[3,9,15],quantile_regress:3,quantileregress:3,quantreg:[1,2],quarter:13,queri:3,quick:0,quot:5,quotat:5,rais:4,random:5,random_walk:5,rang:[3,16],rank:3,rate:[8,16],read:5,readabl:0,real:[4,16],recent:[10,11,16],record:4,recreat:10,recurr:[4,5],red:[3,4],reference_data:4,refin:[8,16],regress:3,relat:15,relationship:[4,8,11,12,13],remov:4,ren:8,render:5,replac:3,repo:16,repr:4,repres:[3,4,8,9,11,15],represent:16,research:[0,16],reset:4,reset_calculated_valu:4,residu:3,residualanalysi:[1,2],resolut:[3,4],respect:[4,15],respons:13,result:[3,4,7,13,14],retrain:10,revers:4,review:[3,16],rhs_conditional_prob:8,rhs_unconditional_prob:8,right:4,ringgit:[8,16],rio:9,rmse:3,rmse_interv:3,rmseavg:3,rmsestd:3,rng:12,robert:5,roger:4,roi:4,root:3,rossler:[1,2],round:14,rule:[3,4,11,16],rules_by_axi:4,run:[3,5],run_interv:3,run_point:3,run_probabilist:3,sadaei:[1,2,16],salang:12,same:[4,9],sampl:[3,5,8,16],sampler:9,save:[3,4,12,14],save_best:3,save_dataframe_interv:3,save_dataframe_point:3,save_dataframe_probabilist:3,save_model:4,scale:[3,4,16],scale_down:12,scale_param:3,scale_up:12,scan:4,scheme:[3,7,16],scienc:5,scientist:0,score:3,search:[0,4,8,13,14,16],season:[1,2,3,4,8,9,16],seasonalensembleft:9,seasonalflrg:13,seasonalft:13,seasonalindex:[2,8],second_of_dai:13,second_of_hour:13,second_of_minut:13,secur:5,selecaosimples_menorrms:3,select:5,sep:5,separ:5,sequenc:4,seri:[1,2,3,4,8,9,10,11,12,13,14],set:[3,4,7,8,11,12,13,14,15,16],set_data:13,set_lh:11,set_ord:4,set_rh:11,set_target_vari:11,set_transform:9,seth:11,setnam:14,sever:[3,4,5,9,13,14],severiano:8,sft:[2,8],shape:4,share:9,share_paramet:6,shared_partition:6,sharp:3,sharpavg:3,sharpstd:3,shortnam:4,show:[4,14],show_and_save_imag:4,shyi:8,side:4,sigma:5,sigma_inc:5,sigma_ini:5,sigma_max:5,sigma_min:5,sigmf:4,sigmoid:4,signal:5,signalemul:5,silva:[0,8,9],simpl:[0,1,2,5,13],simplenonstationary_gridpartitioner_build:12,simplenonstationarypartition:12,simplepartition:14,simpler:4,simplesearch_rms:3,singl:[4,14],single_plot_residu:3,singleton:[1,2,4],singletonpartition:14,sinoid:5,sistema:5,sixth:13,size:[3,4,12,14],slave_forecast_multivari:6,slave_forecast_univari:6,slave_train_multivari:6,slave_train_univari:6,slice:4,slide:[3,4],sliding_window:4,sliding_window_benchmark:3,smape:3,smith:4,smooth:[4,16],social:[14,16],solar:8,sonda:[1,2],song:[1,2,13,16],sort:[4,14],sort_ascend:3,sort_column:3,sortedcollect:[1,2],sourc:[3,4,5,6,7,8,9,10,11,12,13,14,15],sp500:5,space:4,spark:[1,2],spatial:14,specif:[3,4,8,9,10,11,12,13],split:[3,4,14],splitabov:14,splitbelow:14,splite:16,sql:3,sqlite3:[3,7],sqlite:[3,7],squar:3,ssci:8,standard:[3,5,16],start:[0,3,4,5,8,11,12,13],stat:[3,8,16],station:5,stationari:12,stationary_gaussian:5,statist:[0,3],statsmodel:3,step:[3,4,8,9,10,11,12,13,16],steps_ahead:[3,4],stochast:5,stock:5,store:[3,4,7],strang:5,string:[4,11,13,14],strip_datepart:13,structur:[4,13],student:0,style:4,submodul:[0,1],subpackag:[0,1],suitabl:0,sum:8,sunspot:[1,2],superset:4,support:4,symbol:5,symmetr:3,symposium:8,synthet:[1,2,3],syst:[8,13,14,16],system:[5,8,12],tabl:[3,7],tabular_dataframe_column:3,tag:[3,7],taiex:[1,2,8,16],taiwan:5,take:16,tam:[3,4,12,14,15],target:3,target_vari:[4,6],tau:[3,5,15],technol:[14,16],tempeatur:5,tempor:[4,13,16],term:[3,4,8,16],test:[3,4,16],test_data:3,than:[4,5,16],thei:4,theil:3,theilsinequ:3,theoret:3,theori:16,thi:[0,4,5,8,11,12,13,14,15,16],third:13,thoma:4,those:4,thres1:14,thres2:14,threshold:14,through:5,time:[1,2,3,4,8,9,10,11,12,13,14],time_from:4,time_to:4,timegridpartition:13,times2:3,timeseri:5,timevari:[2,8],titl:[3,14,15],tool:[0,16],total:[4,5],tradit:8,train:[3,4,8,9,10,11,12,13,14],train_data:[3,9],train_individual_model:9,transact:12,transform:[1,2,3,7,11,12,13,14,16],transformations_param:4,transit:[4,16],translat:16,trapezoid:[4,14,16],trapmf:4,tree:[1,2],trend:[8,16],trendweightedflrg:8,trendweightedft:8,triangular:4,trigger:4,trimf:4,tsa:3,tsdl:5,tun:7,tupl:[3,4,7,11,14],two:5,twse:5,type:[3,4,5,6,11,13,14,15,16],typeonlegend:[3,4],uavg:3,ufmg:0,under:4,unified_scaled_interv:3,unified_scaled_interval_pinbal:3,unified_scaled_point:3,unified_scaled_probabilist:3,uniform:5,uniqu:[4,8,9,12,13],uniquefilenam:4,unit:13,univari:5,univers:[0,3,4,5,11,12,13,14,15,16],unpack_arg:12,uod:[3,4,7,8,11,14,15],uod_clip:4,up_param:3,updat:10,update_model:8,update_uod:9,updateuod:[4,11],upper:[4,5,8,11,12,14],upper_set:14,url:[0,3,5,6],usa:5,usag:0,usd:[1,2],use:[0,4],used:[3,4,7,8,9,14,16],user:[3,7],using:[4,8,10,14,16],ustatist:3,ustd:3,usual:[4,16],util:[1,2,8],val:14,valid:4,valu:[3,4,5,7,8,9,10,11,12,13,14,15,16],valueerror:4,variabl:[2,4,6,8,14],varianc:[4,5],variant:10,variat:5,vector:[4,11,14],veri:[5,8],verif:3,verifi:14,visualize_distribut:8,vmax:5,vmin:5,vol:[8,13,14,16],walk:5,want:0,weather:3,weight:[5,8,11,16],weightedflrg:[8,11],weightedft:8,weightedhighorderflrg:8,weightedhighorderft:8,weightedmvft:11,were:[13,14],when:[4,10,11,14],where:[3,4,8,11,13],which:[3,4,7,16],white_nois:5,whose:0,width:[4,12,14,15],width_param:12,window:[3,4,10],window_index:12,window_kei:3,window_length:10,window_s:12,windows:[3,4],winkler:3,winkler_mean:3,winkler_scor:3,without:4,wmvft:[2,8],word:[3,7],work:[4,13,14],wrap:[3,9,10],wrapper:4,www:5,xiii:9,yahoo:5,year:13,yearli:5,yeh:[14,16],you:4,young:4,younger:4,youngest:4,zenodo:0},titles:["pyFTS - Fuzzy Time Series for Python","pyFTS","pyFTS package","pyFTS.benchmarks package","pyFTS.common package","pyFTS.data package","pyFTS.distributed package","pyFTS.hyperparam package","pyFTS.models package","pyFTS.models.ensemble package","pyFTS.models.incremental package","pyFTS.models.multivariate package","pyFTS.models.nonstationary package","pyFTS.models.seasonal package","pyFTS.partitioners package","pyFTS.probabilistic package","pyFTS Quick Start"],titleterms:{FTS:16,airpasseng:5,arima:3,artifici:5,benchmark:3,bitcoin:5,chaotic:5,chen:8,cheng:8,cmean:14,cmsft:13,cmvft:11,common:[4,5,11,12,13],composit:4,conf:2,content:[2,3,4,5,6,7,8,9,10,11,12,13,14,15],cvft:12,data:5,dataset:5,dispi:6,distribut:6,dowjon:5,enrol:5,ensembl:9,entropi:14,ethereum:5,eur:5,evolutionari:7,exampl:16,fcm:14,flr:[4,11],flrg:[4,11,12],fts:4,fuzzi:[0,16],fuzzyset:4,gbp:5,gener:5,glass:5,granular:11,grid:14,gridsearch:7,henon:5,hoft:8,honsft:12,how:[0,16],huarng:14,hwang:8,hyperparam:7,ift:8,increment:10,incrementalensembl:10,index:0,inmet:5,instal:16,ismailefendi:8,kde:15,knn:3,librari:0,logistic_map:5,lorentz:5,mackei:5,malaysia:5,measur:3,membership:4,model:[8,9,10,11,12,13],modul:[2,3,4,5,6,7,8,9,10,11,12,13,14,15],msft:13,multiseason:9,multivari:11,mvft:11,naiv:3,nasdaq:5,nonstationari:12,nsft:12,packag:[2,3,4,5,6,7,8,9,10,11,12,13,14,15],parallel_util:14,partition:[11,12,13,14],perturb:12,probabilist:15,probabilitydistribut:15,pwft:8,pyft:[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16],python:0,quantreg:3,quick:16,refer:[0,16],residualanalysi:3,rossler:5,sadaei:8,season:13,seasonalindex:13,seri:[0,5,16],sft:13,simpl:14,singleton:14,sonda:5,song:8,sortedcollect:4,spark:6,start:16,submodul:[2,3,4,5,6,7,8,9,10,11,12,13,14,15],subpackag:[2,8],sunspot:5,synthet:5,taiex:5,time:[0,5,16],timevari:10,transform:4,tree:4,usag:16,usd:5,util:[3,4,7,12,14],variabl:11,what:[0,16],wmvft:11}}) \ No newline at end of file diff --git a/docs/pyFTS.models.multivariate.rst b/docs/pyFTS.models.multivariate.rst index 64ada4d..3ca4fb3 100644 --- a/docs/pyFTS.models.multivariate.rst +++ b/docs/pyFTS.models.multivariate.rst @@ -45,6 +45,22 @@ pyFTS.models.multivariate.flrg module :undoc-members: :show-inheritance: +pyFTS.models.multivariate.partitioner module +--------------------------------------------- + +.. automodule:: pyFTS.models.multivariate.partitioner + :members: + :undoc-members: + :show-inheritance: + + pyFTS.models.multivariate.grid module +------------------------------------------ + +.. automodule:: pyFTS.models.multivariate.grid + :members: + :undoc-members: + :show-inheritance: + pyFTS.models.multivariate.mvfts module -------------------------------------- @@ -68,4 +84,12 @@ pyFTS.models.multivariate.cmvfts module :members: :undoc-members: :show-inheritance: + +pyFTS.models.multivariate.granular module +--------------------------------------------- +.. automodule:: pyFTS.models.multivariate.granular + :members: + :undoc-members: + :show-inheritance: + diff --git a/pyFTS/common/fts.py b/pyFTS/common/fts.py index ca45049..6620f20 100644 --- a/pyFTS/common/fts.py +++ b/pyFTS/common/fts.py @@ -71,6 +71,8 @@ class FTS(object): self.max_lag = self.order """A integer indicating the largest lag used by the model. This value also indicates the minimum number of past lags needed to forecast a single step ahead""" + self.log = pd.DataFrame([],columns=["Datetime","Operation","Value"]) + """""" def fuzzy(self, data): """ @@ -558,6 +560,9 @@ class FTS(object): for flrg in self.flrgs.keys(): self.flrgs[flrg].reset_calculated_values() + def append_log(self,operation, value): + pass + diff --git a/pyFTS/models/hofts.py b/pyFTS/models/hofts.py index 9e395a9..a299543 100644 --- a/pyFTS/models/hofts.py +++ b/pyFTS/models/hofts.py @@ -126,6 +126,9 @@ class HighOrderFTS(fts.FTS): nsample = [self.partitioner.fuzzyfy(k, mode="sets", alpha_cut=self.alpha_cut) for k in sample] + if explain: + self.append_log("Fuzzyfication","{} -> {}".format(sample, nsample)) + return self.generate_lhs_flrg_fuzzyfied(nsample, explain) def generate_lhs_flrg_fuzzyfied(self, sample, explain=False): @@ -137,7 +140,7 @@ class HighOrderFTS(fts.FTS): lags.append(lhs) if explain: - print("\t (Lag {}) {} -> {} \n".format(o, sample[o-1], lhs)) + self.append_log("Ordering Lags", "Lag {} Value {}".format(o, lhs)) # Trace the possible paths for path in product(*lags): @@ -217,17 +220,11 @@ class HighOrderFTS(fts.FTS): sample = ndata[k - self.max_lag: k] - if explain: - print("Fuzzyfication \n") - if not fuzzyfied: flrgs = self.generate_lhs_flrg(sample, explain) else: flrgs = self.generate_lhs_flrg_fuzzyfied(sample, explain) - if explain: - print("Rules:\n") - midpoints = [] memberships = [] for flrg in flrgs: @@ -240,7 +237,7 @@ class HighOrderFTS(fts.FTS): memberships.append(mv) if explain: - print("\t {} -> {} (Naïve)\t Midpoint: {}\n".format(str(flrg.LHS), flrg.LHS[-1], + self.append_log("Rule Matching", "{} -> {} (Naïve) Midpoint: {}".format(str(flrg.LHS), flrg.LHS[-1], mp)) else: flrg = self.flrgs[flrg.get_key()] @@ -250,19 +247,17 @@ class HighOrderFTS(fts.FTS): memberships.append(mv) if explain: - print("\t {} \t Midpoint: {}\n".format(str(flrg), mp)) - print("\t {} \t Membership: {}\n".format(str(flrg), mv)) + self.append_log("Rule Matching", "{}, Midpoint: {} Membership: {}".format(flrg.get_key(), mp, mv)) if mode == "mean" or fuzzyfied: final = np.nanmean(midpoints) + if explain: self.append_log("Deffuzyfication", "By Mean: {}".format(final)) else: final = np.dot(midpoints, memberships) + if explain: self.append_log("Deffuzyfication", "By Memberships: {}".format(final)) ret.append(final) - if explain: - print("Deffuzyfied value: {} \n".format(final)) - return ret diff --git a/pyFTS/models/multivariate/grid.py b/pyFTS/models/multivariate/grid.py index 0561c6c..4dc4b88 100644 --- a/pyFTS/models/multivariate/grid.py +++ b/pyFTS/models/multivariate/grid.py @@ -33,6 +33,10 @@ class GridCluster(partitioner.MultivariatePartitioner): class IncrementalGridCluster(partitioner.MultivariatePartitioner): + """ + Create combinations of fuzzy sets of the variables on demand, incrementally increasing the + multivariate fuzzy set base. + """ def __init__(self, **kwargs): super(IncrementalGridCluster, self).__init__(**kwargs) self.name="IncrementalGridCluster" diff --git a/pyFTS/models/multivariate/mvfts.py b/pyFTS/models/multivariate/mvfts.py index bbbb8a9..73de64d 100644 --- a/pyFTS/models/multivariate/mvfts.py +++ b/pyFTS/models/multivariate/mvfts.py @@ -9,11 +9,11 @@ import pandas as pd def product_dict(**kwargs): - ''' + """ Code by Seth Johnson :param kwargs: :return: - ''' + """ keys = kwargs.keys() vals = kwargs.values() for instance in product(*vals): @@ -244,7 +244,6 @@ class MVFTS(fts.FTS): params=data[self.target_variable.data_label].values) return ret - def clone_parameters(self, model): super(MVFTS, self).clone_parameters(model) diff --git a/pyFTS/models/multivariate/partitioner.py b/pyFTS/models/multivariate/partitioner.py index d244929..81cf8b8 100644 --- a/pyFTS/models/multivariate/partitioner.py +++ b/pyFTS/models/multivariate/partitioner.py @@ -53,14 +53,15 @@ class MultivariatePartitioner(partitioner.Partitioner): self.build_index() def search(self, data, **kwargs): - ''' + """ Perform a search for the nearest fuzzy sets of the point 'data'. This function were designed to work with several overlapped fuzzy sets. :param data: the value to search for the nearest fuzzy sets :param type: the return type: 'index' for the fuzzy set indexes or 'name' for fuzzy set names. :return: a list with the nearest fuzzy sets - ''' + """ + if self.kdtree is None: self.build_index() @@ -83,9 +84,6 @@ class MultivariatePartitioner(partitioner.Partitioner): elif type == 'index': return sorted(ix) - - - def fuzzyfy(self, data, **kwargs): return fuzzyfy_instance_clustered(data, self, **kwargs)