K means clustering with initial guess centroids given

18 views (last 30 days)
I have the problem where i have been given a 10,000x1 selection of data points, 100 points collected every weekend for 100 weeks. I am also given a 100x1 text file which i should use as the 'initial guess' for centroids. I need to iterate through the k means clustering algorithym until the distance between centroid locations is 0.00001. Please help, thanks
Riordan Moloney
Riordan Moloney on 30 Dec 2020
Yes this is what i am strugggling with, I assume i will need to use implemented for loops, but the data variables are of different sizes and i am not sure how to test which value in the initial centroids is closest to the particular value i will be testing in the results data.

Sign in to comment.

Answers (1)

Rishabh Mishra
Rishabh Mishra on 6 Jan 2021
I would like to make following assumptions:
  1. The points over which you are applying k-means clustering are 2-D coordinates. The points are represented using 2 dimensions. I.e., (x,y).
  2. arr’ - the 10000 x 2 array of 10000 points each with 2 dimensions.
  3. ‘centroid’ - the 100 x 2 of 100 centroids each with 2 dimensions.
Use the code below to perform k-means clustering on given points:
k = 100; % number of cluster
[idx,C] = kmeans(arr,k,'Start',centroid);
% idx - defines which cluster a given point is assigned to
% C - gives co-ordinate of all the 100 cluster centroids
Hope this helps.

Community Treasure Hunt

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

Start Hunting!