Clustering#

Module with classes to perform clustering of functional data.

K means algorithms#

The following classes implement both, the K-Means and the Fuzzy K-Means algorithms respectively. In order to show the results in a visual way, the module skfda.exploratory.visualization.clustering_plots can be used. See the example Clustering for a detailed explanation.

skfda.ml.clustering.KMeans(*[, n_clusters, ...])

K-Means algorithm for functional data.

skfda.ml.clustering.FuzzyCMeans(*[, ...])

Fuzzy c-Means clustering for functional data.

Nearest Neighbors#

The class NearestNeighbors implements the nearest neighbors algorithm to perform unsupervised neighbor searches.

skfda.ml.clustering.NearestNeighbors()

Unsupervised learner for implementing neighbor searches.

Hierarchical clustering#

Hierarchical clusterings are constructed by iteratively merging or splitting clusters given a metric between their elements, in order to cluster together elements that are close from each other. This is repeated until a desired number of clusters is obtained. The resulting hierarchy of clusters can be represented as a tree, called a dendogram. The following hierarchical clusterings are supported:

skfda.ml.clustering.AgglomerativeClustering([...])

Agglomerative Clustering.