Create zeros in matrix size, but not 1. column and row, or last column and row

1 view (last 30 days)
Hi
I am trying to make a matrix where the middle has to be changed into zeros, f. ex. with magic(4)
v=magic(4)
v(2,2)=0; v(2,3)=0; v(3,2)=0; v(3,3)=0;
16 2 3 13
5 11 10 8
9 7 6 12
4 14 15 1
Here i want the 11, 10, 7 and 6 to be zeros. But need it to be done in random size matrix.
Pretty new in the whole matlab world.
Anyone whom can help?
  3 Comments
Anders
Anders on 15 Aug 2013
What I mean, is that everything else than first and last row + first and last column. Hope this will clear things out.

Sign in to comment.

Accepted Answer

Roger Stafford
Roger Stafford on 15 Aug 2013
v(2:3,2:3) = 0;
Note: This method only works for rectangular regions. For other shapes you need to use linear indexing.
  5 Comments

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!