npm.io
0.11.8 • Published 1 year ago

@types/skmeans

Licence
MIT
Version
0.11.8
Deps
0
Size
4 kB
Vulns
0
Weekly
0
Stars
51.4K

Installation

npm install --save @types/skmeans

Summary

This package contains type definitions for skmeans (https://github.com/solzimer/skmeans).

Details

Files were exported from https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/skmeans.

index.d.ts

type CentroidValues<TPoint extends number | number[]> = TPoint[] | "kmrand" | "kmpp";

interface TestResult<TPoint> {
    idx: number;
    centroid: TPoint;
}

interface DataResult<TPoint extends number | number[]> {
    it: number;
    k: number;
    centroids: TPoint[];
    idxs: number[];
    test: (x: TPoint, distance?: (x: TPoint, y: TPoint) => number) => TestResult<TPoint>;
}

/**
 * Calculates unidimiensional and multidimensional k-means clustering on data.
 *
 * @param data Unidimiensional or multidimensional array of values to be clustered.
 * @param k Number of clusters.
 * @param centroids Initial centroid values.
 * @param iterations Maximum number of iterations. If not provided, it will be set to 10000.
 * @param distance Custom distance function. Takes two points as arguments and returns a scalar number.
 */
declare function skmeans<TPoint extends number | number[]>(
    data: TPoint[],
    k: number,
    centroids?: CentroidValues<TPoint> | null,
    iterations?: number | null,
    distance?: (x: TPoint, y: TPoint) => number | null,
): DataResult<TPoint>;

export = skmeans;

Additional Details

  • Last updated: Thu, 30 Jan 2025 1128 GMT
  • Dependencies: none

Credits

These definitions were written by .