Bil*_*ean 0 matlab loops vector
我有一个长向量,包含> 100万个条目,根据概率密度函数(高斯)分布.我只需要正值,这些我在下面的MWE中找到
N = 1.5e6; vals = normrnd(0, 1, N, 1); final = []; for i=1:length(vals) if(vals(i)>0) final = [final vals(i)]; end end
问题是这需要很长时间.在MatLAB中有更聪明的方法吗?
谢谢,奈尔斯.
jer*_*rad 6
您可以在matlab中删除没有for循环的负数:
vals = normrnd(0, 1, N, 1); vals(vals<0) = [];
归档时间:
12 年,9 月 前
查看次数:
145 次
最近记录: