如果该行中的第一个元素包含在数组中,我试图删除该行。
我是矩阵:
A = [ 1 2; 1 5; 2 3; 3 4; 3 5; 4 5 ];
和数组
B = [1,2,3]
在前。我克隆了A到X
X = A
选择之后,我应该得到:
X = [4 5]
我尝试过这样的事情:
X(:, 1 == any(B)) = [];
答案 0 :(得分:3)
您可以使用ismember
检查A
(A(:,1)
)第一列中的值是否在B
中,然后使用生成的逻辑数组来选择A
以外的B
行,并将其分配给X
。
X = A(~ismember(A(:,1), B),:);
<强>更新强>
如果您想检查第一个或第二个元素是否在B
中,您可以执行以下操作
X = A(~any(ismember(A:,1:2), B), 2), :);
或者更简单地说,如果你只有两列
X = A(~any(ismember(A, B), 2), :);