我有两个5×5个细胞。单元格仅包含double
个数值。
如何找到元素的交集?
输出应该是具有共同元素的单元格,例如[x,y]
。
答案 0 :(得分:0)
考虑到您的单元格包含不同大小的数字矩阵,您希望在这些矩阵中找到公共元素(例如 C1
和C2
),并获取结果作为单元格,您可以使用以下代码:
e = num2cell(intersect(arrayfun(@(x) C1{x}(:), (1:numel(A))'),...
arrayfun(@(x) C2{x}(:), (1:numel(A))')));
此代码适用于单元格中任何维度的矩阵。
如果要查找两个单元格中相同的矩阵,可能需要isequal函数。
如果单元格内的数字只有一个元素,则应该将它们存储为标准数值数组,如@ luis-mendo所述