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.

 采纳的回答

2 个评论

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}))

请先登录,再进行评论。

更多回答(0 个)

类别

帮助中心File Exchange 中查找有关 Data Type Conversion 的更多信息

产品

版本

R2019b

标签

Community Treasure Hunt

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

Start Hunting!

Translated by