How to run k means clustering on multiple items in a text file

6 vues (au cours des 30 derniers jours)
Aaron
Aaron le 12 Oct 2013
Réponse apportée : Yatin le 14 Oct 2013
I am trying to find a way to run k-means clustering on data from the attached text file. The first column shows an individual item. for example: A8888888888888888880011 is one item and it appears several times in the data. I would like to run k means clustering for each item in the text file (the one provided is shortened by a few thousand lines). I read the data in and sort it by using:
fid = fopen(filename);
cell_data = textscan(fid, '%s %n %n');
fclose(fid);
matrix_data = [cell_data{:}];
sort_data = sortrows(matrix_data, [1,3]);
After this I would like to have one coordinate for each item. The coordinate being the result of k means clustering returning a point (column b, column c).
So after running this on the text file, I would end up with 3 points, one for item 11, 12, and 13.
I hope this makes sense but if there are any questions please ask
  4 commentaires
sixwwwwww
sixwwwwww le 14 Oct 2013
In your example, you have a cluster of 8 elements(7 x and 1 y). So can we take mean of 8 points as a cluster point? or should we select 1 of these 8 points strictly?
Jonathan LeSage
Jonathan LeSage le 14 Oct 2013
Could you clarify what data you are trying to cluster in your example? Are you trying to cluster column one data or column two as one-dimensional vectors? Or are you trying to cluster two-dimensional data?

Connectez-vous pour commenter.

Réponse acceptée

Yatin
Yatin le 14 Oct 2013
Hi,
You can try using the "kmeans" function by formatting your data as per the data format required in the function. The function returns the centroid of the cluster which is the best representation of the cluster. For more information you can refer to the link below:

Plus de réponses (0)

Community Treasure Hunt

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

Start Hunting!

Translated by