htmd.clustering.regular module#

class htmd.clustering.regular.RegCluster(radius=None, n_clusters=None)#

Bases: BaseEstimator, ClusterMixin, TransformerMixin

Class to perform regular clustering of a given data set

RegCluster can be passed a radius or an approximate number of clusters. If a number of clusters is passed, KCenter clustering is used to estimate the necessary radius. RegCluster randomly chooses a point and assigns all points within the radius of this point to the same cluster. Then it proceeds with the nearest point, which is not yet assigned to a cluster and puts all unassigned points within the radius of this point in the next cluster and so on.

Parameters:
  • radius (float) – radius of clusters

  • n_clusters (int) – desired number of clusters

Examples

>>> cluster = RegCluster(radius=5.1)
>>> cluster.fit(data)
cluster_centers#

list with the points, which are the centers of the clusters

Type:

list

centerFrames#

list of indices of center points in data array

Type:

list

labels_#

list with number of cluster of each frame

Type:

list

clusterSize_#

list with number of frames in each cluster

Type:

list

property clusterSize#
property cluster_centers_#
fit(data)#

performs clustering of data

Parameters:
  • data (np.ndarray) – array of data points to cluster

  • merge (int) – minimal number of frames within each cluster. Smaller clusters are merged into next big one

set_fit_request(*, data: bool | None | str = '$UNCHANGED$') RegCluster#

Request metadata passed to the fit method.

Note that this method is only relevant if enable_metadata_routing=True (see sklearn.set_config()). Please see User Guide on how the routing mechanism works.

The options for each parameter are:

  • True: metadata is requested, and passed to fit if provided. The request is ignored if metadata is not provided.

  • False: metadata is not requested and the meta-estimator will not pass it to fit.

  • None: metadata is not requested, and the meta-estimator will raise an error if the user provides it.

  • str: metadata should be passed to the meta-estimator with this given alias instead of the original name.

The default (sklearn.utils.metadata_routing.UNCHANGED) retains the existing request. This allows you to change the request for some parameters and not others.

New in version 1.3.

Note

This method is only relevant if this estimator is used as a sub-estimator of a meta-estimator, e.g. used inside a Pipeline. Otherwise it has no effect.

Parameters:

data (str, True, False, or None, default=sklearn.utils.metadata_routing.UNCHANGED) – Metadata routing for data parameter in fit.

Returns:

self – The updated object.

Return type:

object