k-medoids
Version:
Implementation of the k-mediods clustering algorithm
22 lines (21 loc) • 828 B
TypeScript
import { Cluster } from "./cluster";
export declare class Clusterer<T> {
Elements: T[];
K: number;
DistanceFn: (t1: T, t2: T) => number;
static clusterElements: <T extends {}>(elements: T[], k: number, distanceFn?: (t1: T, t2: T) => number) => T[][];
static getInstance: <T extends {}>(elements: T[], k: number, distanceFn?: (t1: T, t2: T) => number) => Clusterer<T>;
Medoids: T[];
Clusters: Array<Cluster<T>>;
IterationCount: number;
readonly OptimisationStarted: boolean;
OptimisationCompleted: boolean;
private constructor();
iterate: () => boolean;
getClusteredData: () => T[][];
runToCompletion: () => void;
allocateToClustersAroundCurrentMedoids: () => void;
calculateCurrentCost: () => number;
private findDistances;
private selectInitialMedoids;
}