Info

# Creating two row matrices out of any initial matrix that would contain each element inside the initial matrix and the one in the previous column.

1 view (last 30 days)
GEORGIOS BEKAS on 19 Oct 2019
Closed: MATLAB Answer Bot on 20 Aug 2021
I am trying to create two row matices out of an initial matrix. The two row matrices need to contain each element inside the initial matrix and its previous one.
The code is not good, but are there any shortcuts expressed as MATLAB commands, or any ideas to improve my code?
r = [4 5 6; 4 3 2; 1 4 5]
A = zeros(size(r,1)*size(r,2),2)
function A = breakintopieces(r)
A = zeros(size(r,1)*size(r,2),2)
for i = 1:size(r,1)
for j = 1:size(r,2)
A((i*j),1) =A(i,j-1);
A((i*j),2) =A(i,j);
end
end
endfunction
##### 2 CommentsShowHide 1 older comment
Daniel M on 19 Oct 2019
Don't index into A using i*j, because the entries will not be unique. Use a counter that you initialize to zero outside your loops and increment every iteration.

R2012a

### Community Treasure Hunt

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

Start Hunting!