@saehrimnir/druidjs / KMeans
Class: KMeans
Defined in: clustering/KMeans.js:29
K-Means Clustering
A popular clustering algorithm that partitions data into K clusters where each point belongs to the cluster with the nearest mean (centroid).
See
KMedoids for a more robust alternative
Example
ts
import * as druid from "@saehrimnir/druidjs";
const points = [[1, 1], [1.5, 1.5], [5, 5], [5.5, 5.5]];
const kmeans = new druid.KMeans(points, { K: 2 });
const clusters = kmeans.get_cluster_list(); // [0, 0, 1, 1]
const centroids = kmeans.centroids; // center pointsExtends
Clustering
Constructors
Constructor
ts
new KMeans(points: InputType, parameters?: Partial<ParametersKMeans>): KMeans;Defined in: clustering/KMeans.js:34
Parameters
| Parameter | Type | Description |
|---|---|---|
points | InputType | - |
parameters | Partial<ParametersKMeans> | - |
Returns
KMeans
Overrides
ts
Clustering.constructorProperties
| Property | Type | Inherited from | Defined in |
|---|---|---|---|
_cluster_centroids | Float64Array<ArrayBufferLike>[] | - | clustering/KMeans.js:60 |
_clusters | number[] | - | clustering/KMeans.js:58 |
_D | number | Clustering._D | clustering/KMeans.js:52 |
_K | number | - | clustering/KMeans.js:54 |
_matrix | Matrix | Clustering._matrix | clustering/KMeans.js:45 |
_N | number | Clustering._N | clustering/KMeans.js:51 |
_parameters | ParametersKMeans | Clustering._parameters | clustering/Clustering.js:13 |
_points | InputType | Clustering._points | clustering/Clustering.js:11 |
_randomizer | Randomizer | - | clustering/KMeans.js:55 |
Accessors
centroids
Get Signature
ts
get centroids(): Float64Array<ArrayBufferLike>[];Defined in: clustering/KMeans.js:84
Returns
Float64Array<ArrayBufferLike>[]
The cluster centroids
k
Get Signature
ts
get k(): number;Defined in: clustering/KMeans.js:79
Returns
number
The number of clusters
Methods
get_cluster_list()
ts
get_cluster_list(): number[];Defined in: clustering/KMeans.js:89
Returns
number[]
The cluster list
Overrides
ts
Clustering.get_cluster_listget_clusters()
ts
get_clusters(): number[][];Defined in: clustering/KMeans.js:94
Returns
number[][]
An Array of clusters with the indices of the points.
Overrides
ts
Clustering.get_clusters