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

1 回表示 (過去 30 日間)
Anders
Anders 2013 年 8 月 15 日
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 件のコメント
Andrew Reibold
Andrew Reibold 2013 年 8 月 15 日
(5,5) seems like it would be the middle of that..
Anders
Anders 2013 年 8 月 15 日
What I mean, is that everything else than first and last row + first and last column. Hope this will clear things out.

サインインしてコメントする。

採用された回答

Roger Stafford
Roger Stafford 2013 年 8 月 15 日
v(2:3,2:3) = 0;
Note: This method only works for rectangular regions. For other shapes you need to use linear indexing.
  5 件のコメント
Image Analyst
Image Analyst 2013 年 8 月 15 日
That's what Roger's code
v(2:end-1,2:end-1) = 0;
does, so you should be all set.
Anders
Anders 2013 年 8 月 16 日
Yes, thank you for your time. :)

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeLogical についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by