我想从维度2 * n的矩阵的开头有效地删除大量数据。矩阵看起来像这样:
x1 x2
x3 x4
...
...
我想删除行中第一个元素小于某个数字的行,并在行不小时停止(元素按数字顺序排列)
我现在做的很慢:
while 1
if list{i}(1) <= someNumber
list{i}(1,:) = []
else
break;
end
end
在MATLAB中必须有一种巧妙的方法吗?
谢谢。
答案 0 :(得分:2)
一种方法是一次比较整个第一列然后删除,即
rows2delete = list{i}(:,1) <= someNumber; %# creates logical array with 1 for deletion
list{i}(rows2delete,:) = []; %# delete some rows, all corresponding cols