Basic Vector Manipulation

2 views (last 30 days)
Shani Gal
Shani Gal on 21 May 2012
Hi
I have 2 vectors
A=[8,4,5,2,4,6,4,8];
K=[1,3,5,1]
I want to create a third vector like this:
C(1)=sum(A(1))
C(2)=sum(A(1:3))
C(3)=sum(A(1:5))
C(4)=sum(A(1))
Without using a for loop ( this is an example, the vectors I have are larger )
Thanks
Shani

Answers (1)

Daniel Shub
Daniel Shub on 21 May 2012
There might be faster ways depending on K.
A = [8,4,5,2,4,6,4,8];
K = [1,3,5,1]
x = cumsum(A);
x(k)
  1 Comment
Oleg Komarov
Oleg Komarov on 21 May 2012
One simple mod:
x = cumsum(A(1:max(K)));

Sign in to comment.

Tags

Community Treasure Hunt

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

Start Hunting!