How to group variables in a same cluster ?

1 view (last 30 days)
if I have
A=[1 2; 2 4; 3 4; 4 1; 5 1; 6 4; 7 4; 8 2; 9 1; 10 1]
where 1st column represents customer ID and 2nd column shows Clustering Number. How can I group customer ID into a same cluster such as
cluster1=[4 5 9 10], cluster2=[1,8], cluster3=[ ], cluster4=[2,3,6,7]

Accepted Answer

ANKUR KUMAR
ANKUR KUMAR on 8 Jan 2018
Edited: ANKUR KUMAR on 8 Jan 2018
A=[1 2; 2 4; 3 4; 4 1; 5 1; 6 4; 7 4; 8 2; 9 1; 10 1]
id=unique(A(:,2))
for ii=1:length(id)
iid{ii}=A(find(A(:,2)==id(ii)),1)
end
you can see the outputs just by entering iid{1}
  3 Comments
ANKUR KUMAR
ANKUR KUMAR on 8 Jan 2018
Sir, I am just a student. That was my mistake. Sorry for this.
Pradya Panyainkaew
Pradya Panyainkaew on 8 Jan 2018

It's fine. Don't worry. I'm a rookie also. It's not your fault. Let's share.

Sign in to comment.

More Answers (1)

Guillaume
Guillaume on 8 Jan 2018
Assuming your clustering numbers are all strictly positive integers:
accumarray(A(:, 2), A(:, 1), [], @(custs) {custs})

Categories

Find more on Creating and Concatenating Matrices in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!