【发布时间】:2019-07-15 09:53:37
【问题描述】:
我正在尝试计算列向量中的值大于0.5 的次数。下面的代码将我带到我需要的地方,但我想知道这是最有效的方法。
n = 500
AA = rand(n,1);
for i = 1:n
if abs(AA(i))>0.5
BB(i)=1;
else
BB(i)=0;
end
end
sBB = sum(BB);
SD = sBB/n;
【问题讨论】:
-
你可以做
BB = AA>0.5。 -
谢谢!我会接受这个作为答案或删除这个问题。不管你有什么建议!
-
如何从 Excel 证明您的方法是合理的?在 Excel 中,我们将执行
=COUNTIF(A1:A4, ">0.5")- 不涉及循环。不想听起来咄咄逼人,我只是想了解您为什么决定使用循环。 -
我知道你的意思,我只是想在 MATLAB 中解决问题,而不是直接思考。
标签: matlab performance optimization count conditional-statements