Suming vectors which are produced in a loop
Show older comments
Say I have a loop which returns three vectors:
for i = 1:3
V = [i; 2*i; 3*i];
end
returning
V = [1; 2; 3] V = [2; 4; 6] V = [3; 6; 9]
how do i then sum these to get
sumV = [1+2+3; 2+4+6; 3+6+9]
1 Comment
Stephen23
on 27 Mar 2018
Why not just
>> 6:6:18 ans = 6 12 18
Or
>> 6*(1:3) ans = 6 12 18
Or using bsxfun:
>> sum(bsxfun(@times,1:3,(1:3).'),1) ans = 6 12 18
Or if you really want to use a loop (which is a waste of MATLAB):
>> V = zeros(1,3); >> for k = 1:numel(V), V(k)=sum(k*(1:3)); end >> V V = 6 12 18
Accepted Answer
More Answers (0)
Categories
Find more on Loops and Conditional Statements in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!