Adding all previous to create a new row
2 views (last 30 days)
Show older comments
Hello, if i have a row, I want to create a new row, where the first number is the same, the second number is the first and second from previous row. The third number is the first plus the second plus the third from the first row.
for example: x=[10 9 8 7 6 5] then i want the new row to become: y = [10 19 27 34 40 45]
The best I could come up with was:
y=[x]+[0,x(1:end-1)]+[0 0,x(1:end-2)]+....+[0 0 0 0 0,x(1:end-5)]
But there has to be an easier wawy, since this only works for short rows
0 Comments
Accepted Answer
Honglei Chen
on 11 Dec 2012
Edited: Honglei Chen
on 11 Dec 2012
You can use cumsum
y = cumsum(x)
You can also do
filter(ones(1,numel(x)),1,x)
0 Comments
More Answers (0)
See Also
Categories
Find more on Interpolation 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!