删除包含超出特定范围的数字的矩阵行的最佳方法是什么?例如
A =
200 400
500 200
500 100
600 200
200 100
300 200
Range = [200 500];
然后删除行3,4和5,因为它们包含数字 500。
最佳答案
这应该为您工作-
A(any(A<200 | A>500,2),:)=[];
概括地说-
range1 = [200 500]; %// changed the variable name as
%// range is already a builtin function name
A(any(A<range1(1) | A>range1(2),2),:)=[];
如果要删除的行数很多,为了提高性能,您最好也索引其他行而不是删除-
range1 = [200 500];
A = A(~any(A<range1(1) | A>range1(2),2),:)
关于matlab - 删除包含超出特定范围的任何数字的行-MATLAB,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26756205/