【发布时间】:2014-07-20 04:53:24
【问题描述】:
假设我有一个矩阵 A。
A = [ 2 2 2;
3 3 3;
4 4 4;
5 5 5;
6 6 6]
还有
B = [0 1 0 1 0]
我想从A 中删除所有行,其中B == 1
所以在手术后我希望A成为
[ 2 2 2; 4 4 4; 6 6 6;]
我该怎么做呢?
【问题讨论】:
-
这种逻辑索引方法可能比实际删除这些行更好,如果它适用于八度 -
A = A(B~=1,:)。但如果你必须使用空数组分配 -A(B==1,:)=[] -
为什么 A(B, :) = [] 不起作用,但 A(B==1, :) = [] 起作用 :|我检查了 size(B) 和 size(B==1) 都是 1 5 :|
-
因为 B 不是允许逻辑索引的逻辑数组。将 B 转换为逻辑数组,然后执行
A(B, :) = []如果你想让它以这种方式工作。