Reputation: 1385
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
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
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