def generate_indexed_flrs(sets, indexer, data, transformation=None, alpha_cut=0.0): """ Create a season-indexed ordered FLR set from a list of fuzzy sets with recurrence :param sets: fuzzy sets :param indexer: seasonality indexer :param data: original data :return: ordered list of FLR """ flrs = [] index = indexer.get_season_of_data(data) ndata = indexer.get_data(data) if transformation is not None: ndata = transformation.apply(ndata) for k in np.arange(1, len(ndata)): lhs = FuzzySet.fuzzyfy_series([ndata[k - 1]], sets, method='fuzzy', alpha_cut=alpha_cut) rhs = FuzzySet.fuzzyfy_series([ndata[k]], sets, method='fuzzy', alpha_cut=alpha_cut) season = index[k] for _l in np.array(lhs).flatten(): for _r in np.array(rhs).flatten(): flr = IndexedFLR(season, _l, _r) flrs.append(flr) return flrs
def train(self, ndata, **kwargs): tmpdata = FuzzySet.fuzzyfy_series(ndata, self.sets, method='maximum') flrs = FLR.generate_recurrent_flrs(tmpdata) self.generate_flrg(flrs)
def train(self, data, **kwargs): tmpdata = FuzzySet.fuzzyfy_series(data, self.sets, method='maximum') flrs = FLR.generate_non_recurrent_flrs(tmpdata) self.operation_matrix(flrs)