neco-kmeans
Deterministic k-means clustering for partitioning points into k groups without random initialization noise.
Clustering behavior
The implementation uses a deterministic max-distance variant of k-means++ for initialization, then refines assignments with Lloyd iteration. Identical inputs therefore produce identical outputs, which helps in reproducible analysis pipelines.
Usage
use kmeans;
let data = ;
let result = kmeans.expect;
println!;
println!;
println!;
API
| Item | Description |
|---|---|
kmeans(data, dim, k, max_iter) |
Run deterministic k-means and return Result<KmeansResult, KmeansError> |
KmeansResult |
Stores assignments, centroids, dimensionality, and iteration count |
KmeansResult::centroid(i) |
Borrow the i-th centroid as a slice |
KmeansResult::k() |
Return the number of clusters |
Optional features
| Feature | Description |
|---|---|
parallel |
Enables rayon-based parallel assignment updates |
License
MIT