How to find same elements in a cell array?
Ältere Kommentare anzeigen
Hello all,
I have the following question:
I need to find the same elements and how many times they are repeated in a cell array. The elements are vectors of integers (e.g, [1,3,4,5]). Then, I'd like to find the repeated sequences and the count of their repetitions.
For example, suppose that the cell array (C) is composed as follows:
[1,2,4,5] [1,4,2,5] [1,2,4,5] [4,1,5,2] [1,2,4,5] [1,4,2,5]
Is there any smart solution to get the sequences [1,2,4,5] and [1,4,2,5], and their repetitions (3 and 2, respectively)?
Thanks in advance,
Ale
2 Kommentare
Azzi Abdelmalek
am 14 Jul. 2015
You mean [1,2,4,5] and [1,4,2,5], and their repetitions (3 and 2, respectively)
Alessandro Cristini
am 14 Jul. 2015
Akzeptierte Antwort
Weitere Antworten (1)
Andrei Bobrov
am 14 Jul. 2015
Bearbeitet: Andrei Bobrov
am 14 Jul. 2015
a = {[1,2,4,5] [1,4,2,5] [1,2,4,5] [4,1,5,2,1] [1,2,4,5] [1,4, 2,5]};
a = a(:);
[a1,b,c] = unique(cellfun(@char,a,'un',0));
lo = histc(c,1:max(c));
loo = lo(:) > 1;
out = [a(b(loo)), num2cell(lo(loo))];
1 Kommentar
Alessandro Cristini
am 14 Jul. 2015
Bearbeitet: Alessandro Cristini
am 14 Jul. 2015
Kategorien
Mehr zu Resizing and Reshaping Matrices finden Sie in Hilfe-Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!