Asked by John Doe
on 11 May 2013

I have the results from an iterative process, where the results from each iteration is placed beside eachother, like this:

res = 43.7826 38.8460 38.6889 38.6912 38.6915 107.0735 98.5577 98.1212 98.1170 98.1175 -134.6218 -131.6938 -131.5378 -131.5352 -131.5352 -105.9498 -103.1403 -102.9195 -102.9139 -102.9139

What I want to do is create one matrix that shows the difference between each column, and one matrix that shows the percentage change from one column to the next.

**Edit:** The first column of the first matrix will be:

diff(:,1) = res(:,2)-res(:,1);

Similar for the second matrix, but there I want the percentage change. This is obviously simple to do using loops, but is there a clever way to do this without loops (maybe using some built-in Matlab functions)?

Thanks.

*No products are associated with this question.*

Opportunities for recent engineering grads.

## 2 Comments

## per isakson (view profile)

Direct link to this comment:http://www.mathworks.com/matlabcentral/answers/75422#comment_148381

... difference between each column ...what exactly does that mean?## John Doe (view profile)

Direct link to this comment:http://www.mathworks.com/matlabcentral/answers/75422#comment_148382

The first column of the first matrix will be

Similar for the second matrix, but in that one I want the percentage change.