vectorB(n) = sum(vectorA(1:n)) without a loop

3 vues (au cours des 30 derniers jours)
Christian Tieber
Christian Tieber le 2 Sep 2019
I would like to do:
vectorB(n) = sum(vectorA(1:n))
without a loop.
Thanks in advance

Réponse acceptée

madhan ravi
madhan ravi le 2 Sep 2019
Modifié(e) : madhan ravi le 2 Sep 2019
Perhaps you just want cumsum()
help cumsum
doc cumsum
Or you just need:
v= accumarray(n(:),n(:),[],@(x) sum(vectorA(1:x)));
Wanted = v(n);
% or
Wanted = arrayfun(@(x) sum(vectorA(1:x)),n)
  1 commentaire
Christian Tieber
Christian Tieber le 4 Sep 2019
cumsum looks good.
Thanks!

Connectez-vous pour commenter.

Plus de réponses (0)

Catégories

En savoir plus sur Loops and Conditional Statements dans Help Center et File Exchange

Produits


Version

R2019a

Community Treasure Hunt

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

Start Hunting!

Translated by