pyFTS.partitioners package¶
Module contents¶
Module for pyFTS Universe of Discourse partitioners.
Submodules¶
pyFTS.partitioners.partitioner module¶
-
class
pyFTS.partitioners.partitioner.
Partitioner
(**kwargs)[source]¶ Bases:
object
Universe of Discourse partitioner. Split data on several fuzzy sets
-
build
(data)[source]¶ Perform the partitioning of the Universe of Discourse
- Parameters
data – training data
- Returns
-
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.
-
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
-
get_name
(counter)[source]¶ Find the name of the fuzzy set given its counter id.
- Parameters
counter – The number of the fuzzy set
- Returns
String
-
kdtree
¶ A spatial index to help in fuzzyfication
-
lower_margin
¶ Specific lower exceeding margins for the known UoD. The default value is the self.margin parameter
-
lower_set
()[source]¶ Return the fuzzy set on lower bound of the universe of discourse.
- Returns
Fuzzy Set
-
margin
¶ The upper and lower exceeding margins for the known UoD. The default value is .1
-
membership_function
¶ Fuzzy membership function (pyFTS.common.Membership)
-
name
¶ partitioner name
-
ordered_sets
¶ A ordered list of the fuzzy sets names, sorted by their middle point
-
partitions
¶ The number of universe of discourse partitions, i.e., the number of fuzzy sets that will be created
-
plot
(ax, rounding=0)[source]¶ Plot the partitioning using the Matplotlib axis ax
- Parameters
ax – Matplotlib axis
-
plot_set
(ax, s)[source]¶ Plot an isolate fuzzy set on Matplotlib axis
- Parameters
ax – Matplotlib axis
s – Fuzzy Set
-
prefix
¶ 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
¶ list of partitions names. If None is given the partitions will be auto named with prefix
-
transformation
¶ data transformation to be applied on data
-
type
¶ The type of fuzzy sets that are generated by this partitioner
-
upper_margin
¶ Specific upper exceeding margins for the known UoD. The default value is the self.margin parameter
-
upper_set
()[source]¶ Return the fuzzy set on upper bound of the universe of discourse.
- Returns
Fuzzy Set
-
variable
¶ In a multivariate context, the variable that contains this partitioner
-
pyFTS.partitioners.CMeans module¶
pyFTS.partitioners.Entropy module¶
C. H. Cheng, R. J. Chang, and C. A. Yeh, “Entropy-based and trapezoidal fuzzification-based fuzzy time series approach for forecasting IT project cost,” Technol. Forecast. Social Change, vol. 73, no. 5, pp. 524–542, Jun. 2006.
-
class
pyFTS.partitioners.Entropy.
EntropyPartitioner
(**kwargs)[source]¶ Bases:
pyFTS.partitioners.partitioner.Partitioner
Huarng Entropy Partitioner
pyFTS.partitioners.FCM module¶
S. T. Li, Y. C. Cheng, and S. Y. Lin, “A FCM-based deterministic forecasting model for fuzzy time series,” Comput. Math. Appl., vol. 56, no. 12, pp. 3052–3063, Dec. 2008. DOI: 10.1016/j.camwa.2008.07.033.
pyFTS.partitioners.Grid module¶
Even Length Grid Partitioner
-
class
pyFTS.partitioners.Grid.
GridPartitioner
(**kwargs)[source]¶ Bases:
pyFTS.partitioners.partitioner.Partitioner
Even Length Grid Partitioner
pyFTS.partitioners.Huarng module¶
K. H. Huarng, “Effective lengths of intervals to improve forecasting in fuzzy time series,” Fuzzy Sets Syst., vol. 123, no. 3, pp. 387–394, Nov. 2001.
-
class
pyFTS.partitioners.Huarng.
HuarngPartitioner
(**kwargs)[source]¶ Bases:
pyFTS.partitioners.partitioner.Partitioner
Huarng Empirical Partitioner
pyFTS.partitioners.Singleton module¶
Even Length Grid Partitioner
-
class
pyFTS.partitioners.Singleton.
SingletonPartitioner
(**kwargs)[source]¶ Bases:
pyFTS.partitioners.partitioner.Partitioner
Singleton Partitioner
pyFTS.partitioners.Simple module¶
Simple Partitioner for manually informed fuzzy sets
-
class
pyFTS.partitioners.Simple.
SimplePartitioner
(**kwargs)[source]¶ Bases:
pyFTS.partitioners.partitioner.Partitioner
Simple Partitioner for manually informed fuzzy sets
pyFTS.partitioners.SubClust module¶
Chiu, Stephen L. “Fuzzy model identification based on cluster estimation.” Journal of Intelligent & fuzzy systems 2.3 (1994): 267-278.
-
class
pyFTS.partitioners.SubClust.
SubClustPartitioner
(**kwargs)[source]¶ Bases:
pyFTS.partitioners.partitioner.Partitioner
Subtractive Clustering Partitioner
pyFTS.partitioners.Util module¶
Facility methods for pyFTS partitioners module
-
pyFTS.partitioners.Util.
explore_partitioners
(data, npart, methods=None, mf=None, transformation=None, size=[12, 10], save=False, file=None)[source]¶ Create partitioners for the mf membership functions and npart partitions and show the partitioning images. :data: Time series data :npart: Maximum number of partitions of the universe of discourse :methods: A list with the partitioning methods to be used :mf: A list with the membership functions to be used :transformation: a transformation to be used in partitioner :size: list, the size of the output image [width, height] :save: boolean, if the image will be saved on disk :file: string, the file path to save the image :return: the list of the built partitioners