How to split a matrix based on array similarity

I have matrix A as follows:
A = [123 223 225 123
123 223 224 123
123 223 225 123
123 225 123 23
123 223 224 123
123 223 224 123
123 223 225 123
123 223 224 123
123 223 123 23
];
I want to find similar rows and have their row numbers in another set of matrices:
A1 = [1;2;3;4];
A2 = [5;6;7];
A3 = [8];
A4 = [9];
% numbers inside matrices A1 to A4 refers to row numbers in matrix A

Answers (1)

I am not sure how you define "similarity" but you can try out clustering functions available in Statistics and Machine Learning Toolbox to partition rows in A into k clusters.
clusterdata(A,'maxclust',4)
or
kmeans(A,4)

Categories

Asked:

on 11 Dec 2016

Answered:

on 12 Dec 2016

Community Treasure Hunt

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

Start Hunting!