2

我有两个字符串单元数组AB分别包含 60 和 400 个主题名称。单元格数组中的所有主题A也都在单元格数组中B。我想做的是A从单元格数组中删除单元格数组中列出的主题B以到达单元格数组C,它只包含我想要使用的主题。

4

1 回答 1

7

如果你不关心被排序的结果,你可以使用函数SETDIFF

C = setdiff(B, A);

B如果您需要与删除名称的原始元胞数组的顺序相同的结果,则A可以使用函数ISMEMBER

C = B(~ismember(B, A));

更新:在较新版本的 MATLAB 中, SETDIFF添加了一个附加参数来控制输出元素排序。要保持原始顺序,您现在可以执行以下操作:

C = setdiff(B, A, 'stable');
于 2010-12-11T19:19:29.917 回答