Find unique or duplicate cells in cell array of chars

36 views (last 30 days)
If I have a cell array of cells containing strings such as:
A = {{'A', 'B', 'C'}, {'C', 'D', 'E'}, {'A', 'B', 'C'}, {'C', 'B', 'A'}}
how can I find which cells are duplicates of each other? Or conversely, how can I find which cells are unique?
In this example, the duplicate cells are A(1) and A(3), while the rest are unique.

Accepted Answer

Jos (10584)
Jos (10584) on 29 Aug 2019
A = {{'A', 'B', 'C'}, {'C', 'D', 'E'}, {'A', 'B', 'C'}, {'C', 'B', 'A'}}
N = arrayfun(@(k) sum(arrayfun(@(j) isequal(A{k}, A{j}), 1:numel(A))), 1:numel(A))
unique_elements = A(N==1)
duplicated_elements = A(N>1)

More Answers (0)


Find more on Data Types 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!