Info

この質問は閉じられています。 編集または回答するには再度開いてください。

changing specific values in diagonal

6 ビュー (過去 30 日間)
A Aln
A Aln 2019 年 3 月 25 日
閉鎖済み: MATLAB Answer Bot 2021 年 8 月 20 日
Hello,
I'm trying to change the values in the diagonal based on its column.
let says this is my matrix ( 1/ ,2/ ,3/ ,4/ . . . . are the rows and columns number)
1/ 2/ 3/ 4/ 5/ 6/ 7/ 8/ 9/ 10/ 11/ 12/
1/ 1 1 0 0 1 0 0 0 0 0 0 0
2/ 1 1 1 0 0 1 0 0 0 0 0 0
3/ 0 1 1 1 0 0 1 0 0 0 0 0
4/ 0 0 1 1 0 0 0 1 0 0 0 0
5/ 1 0 0 0 1 1 0 0 1 0 0 0
6/ 0 1 0 0 1 1 1 0 0 1 0 0
7/ 0 0 1 0 0 1 1 1 0 0 1 0
8/ 0 0 0 1 0 0 1 1 0 0 0 1
9/ 0 0 0 0 1 0 0 0 1 1 0 0
10/ 0 0 0 0 0 1 0 0 1 1 1 0
11/ 0 0 0 0 0 0 1 0 0 1 1 1
12/ 0 0 0 0 0 0 0 1 0 0 1 1
in Diag (XX,-1), I want to change those values to 999:
1/ 2/ 3/ 4/ 5/ 6/ 7/ 8/ 9/ 10/ 11/ 12/
1/ 1 1 0 0 1 0 0 0 0 0 0 0
2/ 999 1 1 0 0 1 0 0 0 0 0 0
3/ 0 1 1 1 0 0 1 0 0 0 0 0
4/ 0 0 1 1 0 0 0 1 0 0 0 0
5/ 1 0 0 0 1 1 0 0 1 0 0 0
6/ 0 1 0 0 999 1 1 0 0 1 0 0
7/ 0 0 1 0 0 1 1 1 0 0 1 0
8/ 0 0 0 1 0 0 1 1 0 0 0 1
9/ 0 0 0 0 1 0 0 0 1 1 0 0
10/ 0 0 0 0 0 1 0 0 999 1 1 0
11/ 0 0 0 0 0 0 1 0 0 1 1 1
12/ 0 0 0 0 0 0 0 1 0 0 1 1
How to know which column to change ?
I defined those varibles:
x = 4
y = 3
I should change those:
column 1
column x+1
column 2x+1
The required:
How to do it? are there any different way to make it automatic for any matrix size?
  4 件のコメント
KALYAN ACHARJYA
KALYAN ACHARJYA 2019 年 3 月 26 日
mat=[1 1 0 0 1 0 0 0 0 0 0 0;1 1 1 0 0 1 0 0 0 0 0 0;
0 1 1 1 0 0 1 0 0 0 0 0;0 0 1 1 0 0 0 1 0 0 0 0;
1 0 0 0 1 1 0 0 1 0 0 0;0 1 0 0 1 1 1 0 0 1 0 0;
0 0 1 0 0 1 1 1 0 0 1 0;0 0 0 1 0 0 1 1 0 0 0 1;
0 0 0 0 1 0 0 0 1 1 0 0;0 0 0 0 0 1 0 0 1 1 1 0;
0 0 0 0 0 0 1 0 0 1 1 1;0 0 0 0 0 0 0 1 0 0 1 1];
[rows colm]=size(mat);
r1=2:4:rows;
c1=1:4:colm;
mat(r1,c1)=999 % Modification needed for individual elementwise pair of r1 and c2
Walter Roberson
Walter Roberson 2019 年 3 月 26 日
ind = sub2ind(size(m), r1, c1);
mat(ind) = 999;

回答 (1 件)

Image Analyst
Image Analyst 2019 年 3 月 26 日
Sounds like homework. Some hints: check out toeplitz(), circshift(), and eye()

この質問は閉じられています。

製品


リリース

R2018b

Community Treasure Hunt

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

Start Hunting!

Translated by