Find unique or duplicate cells in cell array of chars

18 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.
Thanks!

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)

Products


Release

R2016b

Community Treasure Hunt

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

Start Hunting!