MATLAB: Create a new matrix of the old matrix

createMATLAB

CREATE THIS MATRIX B 5*9 CREATE B FROM A BY USING FOR STAEMENT
0 0 0 0 1 2 3 4 5
0 0 0 2 4 6 8 10 0
0 0 3 6 9 12 15 0 0 *B*
0 4 8 12 16 20 0 0 0
5 10 15 20 25 0 0 0 0
FROM MATRIX A 5*5 BELOW
1 2 3 4 5
2 4 6 8 10
3 6 9 12 15 *A*
4 8 12 16 20
5 10 15 20 25

Best Answer

[m,n] = size(A);
B = zeros(m,n+m-1);
[I,J] = ndgrid(1:m,1:n);
B(I+m*(J-I+m-1)) = A(I+m*(J-1));