MATLAB Answers

how in matrix insert other matrix

95 views (last 30 days)
hi how in matrix insert other matrix? for example I have:
A=repmat(2, [6 6]);
B=repmat(1, [4 4]);
How I can insert B to A and get it:
A=
2 2 2 2 2 2
2 1 1 1 1 2
2 1 1 1 1 2
2 1 1 1 1 2
2 1 1 1 1 2
2 2 2 2 2 2

  0 Comments

Sign in to comment.

Accepted Answer

Razvan
Razvan on 22 May 2011
Try
[r,c]=size(B);
xpos=2;ypos=2;
A(xpos:xpos+r-1,ypos:ypos+c-1)=B;
, where xpos and ypos are the positions where you want to insert matrix B.

  4 Comments

Show 1 older comment
Razvan
Razvan on 22 May 2011
[row,col] = find(A==1);
will give you the row/column indices of the elements. If you want them in a matrix C, use C=[row,col]; after that
Modestas Sekreckis
Modestas Sekreckis on 22 May 2011
but I forgot to say one small detail, I use a 3D matrix in a real program. How then does it work?
Razvan
Razvan on 22 May 2011
[x,y,z]=ind2sub(size(A),find(A==1));

Sign in to comment.

More Answers (1)

Ben Mitch
Ben Mitch on 22 May 2011
A(2:5,2:5) = B;

  0 Comments

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!

Translated by