Skip to content

@saehrimnir/druidjs / KMedoids

Class: KMedoids

Defined in: clustering/KMedoids.js:20

K-Medoids (PAM - Partitioning Around Medoids)

A robust clustering algorithm similar to K-Means, but uses actual data points (medoids) as cluster centers and can work with any distance metric.

See

KMeans for a faster but less robust alternative

Extends

  • Clustering

Constructors

Constructor

ts
new KMedoids(points: InputType, parameters?: Partial<ParametersKMedoids>): KMedoids;

Defined in: clustering/KMedoids.js:26

Parameters

ParameterTypeDescription
pointsInputTypeData matrix
parametersPartial<ParametersKMedoids>-

Returns

KMedoids

See

https://link.springer.com/chapter/10.1007/978-3-030-32047-8_16 Faster k-Medoids Clustering: Improving the PAM, CLARA, and CLARANS Algorithms

Overrides

ts
Clustering.constructor

Properties

PropertyTypeInherited fromDefined in
_AFloat64Array<ArrayBufferLike>[]-clustering/KMedoids.js:28
_cluster_medoidsnumber[]-clustering/KMedoids.js:39
_clustersany[]-clustering/KMedoids.js:38
_DnumberClustering._Dclustering/Clustering.js:19
_distance_matrixMatrix-clustering/KMedoids.js:32
_is_initializedboolean-clustering/KMedoids.js:40
_matrixMatrixClustering._matrixclustering/Clustering.js:15
_max_iternumber-clustering/KMedoids.js:31
_NnumberClustering._Nclustering/Clustering.js:17
_parametersParametersKMedoidsClustering._parametersclustering/Clustering.js:13
_pointsInputTypeClustering._pointsclustering/Clustering.js:11
_randomizerRandomizer-clustering/KMedoids.js:37

Accessors

k

Get Signature

ts
get k(): number;

Defined in: clustering/KMedoids.js:71

Returns

number


medoids

Get Signature

ts
get medoids(): number[];

Defined in: clustering/KMedoids.js:76

Returns

number[]

Methods

generator()

ts
generator(): AsyncGenerator<number[][], void, unknown>;

Defined in: clustering/KMedoids.js:89

Returns

AsyncGenerator<number[][], void, unknown>


get_cluster_list()

ts
get_cluster_list(): number[];

Defined in: clustering/KMedoids.js:44

Returns

number[]

The cluster list

Overrides

ts
Clustering.get_cluster_list

get_clusters()

ts
get_clusters(): number[][];

Defined in: clustering/KMedoids.js:52

Returns

number[][]

  • Array of clusters with the indices of the rows in given points.

Overrides

ts
Clustering.get_clusters

get_medoids()

ts
get_medoids(): number[];

Defined in: clustering/KMedoids.js:81

Returns

number[]


init()

ts
init(K: number, cluster_medoids: number[]): KMedoids;

Defined in: clustering/KMedoids.js:309

Computes K clusters out of the matrix.

Parameters

ParameterTypeDescription
KnumberNumber of clusters.
cluster_medoidsnumber[]-

Returns

KMedoids