-1
这是一个Matlab代码内检查:向量化一个与如果循环
new=[];
for i=1:size(p,1)
if (alpha*p(i,1)+beta*p(i,2)+gamma*p(i,3)-sigma)>0
new=[new;p(i,:)];
end
end
这里p
是大阵列等300000x3尺寸。 new
数组是通过从p
数组中删除一些3元组获得的。为此,if
检查完成。但是这需要很长时间。
我想向量化代码,如获得一个二进制数组,其中1为保留点,0为删除点。然后使用这些标志,我们可以更快地构建new
阵列。我对吗?有人可以为矢量化或加速上述代码提供代码吗?
_“能有人给的代码向量化或超速上面的代码?” _。对不起,这不是它如何在SO上工作。下次你写一个问题时,首先尝试自己对此进行矢量化并提供你的努力。你也很有可能自己设法做到这一点,并学习一些积极的副作用。 – patrik