Categorygithub.com/lfritz/clustering
modulepackage
0.0.0-20180101124245-a9d970fa57ef
Repository: https://github.com/lfritz/clustering.git
Documentation: pkg.go.dev

# README

clustering

Build Status Go Report Card

Go implementations of the DBSCAN and k-means clustering algorithms, the k-d tree spatial index and some functions to generate and visualize sample data.

Example Output

Below are two examples that show the algorithms in action. In the output, clusters are indicated by colors; points shown in gray were marked as noise.

The first example is 150 points clustered by k-means:

k-means example output

and DBSCAN:

DBSCAN example output

The second example includes a cluster of points distributed in a non-convex shape. K-means doesn't recognize it:

k-means example output

but DBSCAN does:

DBSCAN example output

# Packages

No description provided by the author
Package dbscan implement the DBSCAN (Density-based spatial clustering of applications with noise) algorithm.
Package draw provides functions to draw 2-D points as SVG.
Package generate implements functions that generate random distributions of points.
Package geometry implement some basic geometry functions for 2-D points.
Package index provides spatial indices for 2-D points.
Package kmeans implements the k-means clustering algorithm, with the k-means++ algorithm for choosing initial values.

# Constants

points that don't belong to any cluster.
points that are not (yet) classified.