How to group variables in a same cluster ?

1 Ansicht (letzte 30 Tage)
Pradya Panyainkaew
Pradya Panyainkaew am 8 Jan. 2018
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]

Akzeptierte Antwort

ANKUR KUMAR
ANKUR KUMAR am 8 Jan. 2018
Bearbeitet: ANKUR KUMAR am 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 Kommentare
ANKUR KUMAR
ANKUR KUMAR am 8 Jan. 2018
Sir, I am just a student. That was my mistake. Sorry for this.
Pradya Panyainkaew
Pradya Panyainkaew am 8 Jan. 2018

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

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

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

Kategorien

Mehr zu Creating and Concatenating Matrices finden Sie in Help Center und File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!

Translated by