Kmeans Clustering Using the Distance Matrix

In Matlab predefine function of K-means, we can do the clustering by giving the location of data points and number of clusters. Can we use the same K-means function to do clustering just on the basis of distance matrix and number of clusters?

Answers (2)

Yes. The feature(s) upon which you do cluster analysis can be distance or whatever you want.

4 Comments

@Image Analyst, the distance matrix will have 0s on the diagonal. Is that OK when applying Kmeans?
Yes, but why would that be the case? Why would that happen? It normally wouldn't and would be very unusual to happen at random. My guess is you're not using a correct feature matrix.
I have a set of pulses I am extracting from accelrometer and calculating the distance between each two pulses (pairwise). This way I am contructing a distance matrix and since I am doing this pairwise, then the diagonal will be 0s.
What does that have to do with kmeans?

Sign in to comment.

No you cannot, as you need data for calculating centroids in each iterations, but you can use kmedioids clustering method which use medians instead of centriods. This algorithm is doownloadable in the following link: https://au.mathworks.com/matlabcentral/fileexchange/28860-kmedioids?focused=5165469&tab=function

Asked:

on 5 Jan 2018

Commented:

on 24 Mar 2019

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!