How to remove for-loop in computing a vector of sums?

1 次查看(过去 30 天)
How to compute rcross vector without the for-loop?
rcross = zeros( length(elementProduct) - prefixLen , 1 );
for ii = 1: length(elementProduct) - prefixLen
rcross(ii) = sum( elementProduct(ii : ii + prefixLen - 1) );
end
In one scenario prefixLen is 8. length(elementProduct) can vary from a few hundred to a few million.
  6 个评论
Paul Hoffrichter
Paul Hoffrichter 2020-12-8
@KSSV,
Thank you for your comment. If you move it to an answer, I will accept it. Thanks again!
~Paul
Paul Hoffrichter
Paul Hoffrichter 2020-12-8
I think your approach will also work. But I believe (without testing) that using conv would be slower than movsum.

请先登录,再进行评论。

回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Instrument Control Toolbox 的更多信息

产品


版本

R2020a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by