的我的代码的简化版本如下:截断阵列
A = linspace(0,10,100);
threshold = 6.0;
我想截断矢量A在低于阈值的值。
假设A中的值总是上升的,我怎么能做到这一点和整齐高效?
目前我能想到的唯一方法是引入一个for循环和检查每个元件,一个接一个,并且如果它具有高于阈值的值,然后该值分配给一个新的数组。就像这样:
k=1;
for i = 1:numel(A)
if A(i) < threshold
elseif A(i) >= threshold
Atrunc(k,1) = A(i);
k=k+1;
end
end
但是,这对我来说似乎不是很好,任何人都可以提供更优化的代码...?
使用该量化形式更快 - 'Atrunc = A(A> =阈值)' – Divakar