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. It then proceeds with the nearest unassigned point and puts all unassigned points within the radius of that point in the next cluster, and so on.

Parameters:
  • radius (float | None) – Radius of clusters in the same units as the data.

  • n_clusters (int | None) – Desired approximate number of clusters. Used to estimate the radius via KCenter clustering if radius is not provided.

Examples

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

Array with the cluster index of each frame.

Type:

numpy.ndarray

property clusterSize: ndarray#

Array with the number of frames in each cluster.

property cluster_centers_: ndarray#

Array with the points which are the centers of the clusters.

fit(data)#

Perform clustering of the data.

Parameters:

data (ndarray) – A 2D array of data points to cluster. Rows are samples, columns are features.

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

Configure whether metadata should be requested to be passed to the fit method.

Note that this method is only relevant when this estimator is used as a sub-estimator within a meta-estimator and metadata routing is enabled with enable_metadata_routing=True (see sklearn.set_config()). Please check the 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.

Added in version 1.3.

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