Creating a matrix within a matrix

1 view (last 30 days)
Jakub
Jakub on 21 Feb 2013
I'm having trouble on how to create an MxN matrix will all zeros and in that MxN matrix I want the the first column, first row, last row, and last column to be zeros while the rest of the matrix is all different numbers, with possible values as 0 zeros as well. An example is below,
0 0 0 0 0 0 0 0 0 0 0 0 0 0
0 1 1 0 1 0 1 1 1 1 1 0 0 0
0 0 1 1 0 1 0 0 0 1 1 1 1 0
0 1 0 1 1 1 1 0 1 0 1 0 1 0
0 1 0 0 1 1 1 1 1 1 1 1 1 0
0 0 0 0 0 0 0 0 0 0 0 0 0 0
Really the only values that the middle section can have is one or zero but the outsides have to all be zeros.
  3 Comments
Jakub
Jakub on 21 Feb 2013
Well the first step I tried was doing zeros(M,1,1) and then (zeros(1,N,1) and got stuck with that because that only provided me with the first row and column. Next I tried doing a zeros(M,N) but that leaves me with a MxN zero matrix.
Jakub
Jakub on 21 Feb 2013
It's actually part of my Thesis however I have no prior computer programing background and my adviser took the week off ~_~

Sign in to comment.

Accepted Answer

Matt J
Matt J on 21 Feb 2013
Edited: Matt J on 21 Feb 2013
If you're saying you have a given matrix A and want to set the edges to zero,
A([1,end],[1,end])=0;
  2 Comments
Jakub
Jakub on 21 Feb 2013
Alright I understand that, thank you. One last question would be how do I randomly pick values either 0 or 1 inside the submatrix I want. Meaning I leave the outside all zeros but generate possible 1 or 0 on the inside.
Matt J
Matt J on 21 Feb 2013
Use randi() to generate random zeros and ones everywhere. Then use the code I showed you to set the boundaries to zero.

Sign in to comment.

More Answers (0)

Categories

Find more on Creating and Concatenating Matrices 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!