sorting the outputs of clusters
5 views (last 30 days)
Show older comments
I applied K-means clustering, and I tried to sort the outputs of each cluster individually. for example, if I got 2 clusters, I want to sort the contents of each cluster, and save the result or the output in a table to reuse it again in another function.
how can I do that?
1 Comment
Stephen23
on 18 Apr 2018
Edited: Stephen23
on 18 Apr 2018
Note that rather than saving data into separate variables it is usually easier and more versatile to split data into something like a cell array: then it will scale easily to a different number of clusters, and makes looping over them trivial. Read more about why here:
Answers (1)
njj1
on 18 Apr 2018
What do you mean "sort". You could save them to different variables. For example, if you main matrix is called X and you have cluster information stored in a vector called idx, and there are two clusters numbered 1 and 2:
X1 = X(idx==1,:); X2 = X(idx==2,:);
Is this what you mean?
6 Comments
Walter Roberson
on 19 Apr 2018
Add all what vectors into one vector? And is this one vector per cluster or one vector total?
Are you asking to go through each cluster and sort() its centroid location??
Are you asking to go through the original points, separate them according to cluster number, concatenate all of the rows (that are the input values for clustering to work on) for the cluster into one vector and then sort that vector, even though that would mean sorting x, y, z, ... coordinates all together?
Are you assuming that your inputs are scalars for each sample (only one coordinate) and so the sorting of the different columns of coordinates together does not matter because there would only be one column?
See Also
Categories
Find more on Shifting and Sorting Matrices in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!