John Tan
John Tan

Reputation: 1385

Clustering by distance

I am doing a project that has position related data as an input (e.g. a certain signal amplitde at a certain x,y coordinate). I am trying to cluster them by distance, meaning that the clusters obtained are at least a certain distance away from one another before being considered a new cluster. i.e. there will never be clusters whose centroids are below a certain distance from one another.

My question is that if anyone can point me in the right direction for such an algorithm? I have tried K-Means, but it seems to simply sort them by K clusters as specified, rather than by distance.

Upvotes: 0

Views: 350

Answers (2)

Igor Tyulkanov
Igor Tyulkanov

Reputation: 5548

As far as I understand, you want that centroid of any cluster are placed at a minimum pre-selected distance from a different cluster. If yes I think you should pay attention to k-means clustering and its variations.

Upvotes: 0

ypnos
ypnos

Reputation: 52337

You need a clustering algorithm that takes this constraint (minimum distance) into account. An easy solution is to do a post-processing step, where you merge all clusters that are too close to each other until your constraint is met.

A solution that might give more satisfactory results is to alter the k-means algorithm to do this in each iteration.

If you need the number of clusters to be fixed, your problem gets tougher. What are your other constraints / goals with the clustering?

Upvotes: 1

Related Questions