Checking that array is in cell array

Let's say I have the following cell array:
c = {{[1],[2],[3]};%note this first cell of arrays contains only 1-dim arrays
{[1,2],[2,3],[1,3]}; %only 2-dim arrays
{[1,2,3]}} %only 3-dim arrays
And I want to know if all the subsets of [1,2,3] are in c{2} (which is another cell), how do I ask matlab if [1,2] is in c{2}? This is an inductive kind of cell array where I am adding cells c{k} if and only if all the subsets of a given set (in this example [1,2,3]) were already added to c. I am only stuck in the step of finding this logical value: TF = [1,2] in c{2}. So something like ismember that works with cell arrays that contain arrays.

 Accepted Answer

2 Comments

Thank you! I ended up using
(ismember(1,cellfun(@(M) isequal(M, [1,2]), c{2})))
which gives me the true I was looking for :)
any(cellfun(@(M) isequal(M, [1,2]), c{2}))

Sign in to comment.

More Answers (0)

Products

Release

R2019b

Community Treasure Hunt

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

Start Hunting!