How to linearly change values in matrix
2 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Hanna Haponenko
am 28 Jan. 2019
Bearbeitet: Hanna Haponenko
am 28 Jan. 2019
Observe this matrix:
thismatrix = eye(5)
thismatrix =
1 0 0 0 0
0 1 0 0 0
0 0 1 0 0
0 0 0 1 0
0 0 0 0 1
I wish to replace the zeros on either size of the 1's on every row with values descending from 1 by 0.1.
This is what I want:
thismatrix =
1.0000 0.9000 0.8000 0.7000 0.6000
0.9000 1.0000 0.9000 0.8000 0.7000
0.8000 0.9000 1.0000 0.9000 0.8000
0.7000 0.8000 0.9000 1.0000 0.9000
0.6000 0.7000 0.8000 0.9000 1.0000
How can I accomplish this without numerous "for loops"/spaghetti code (especially if my matrix is larger)?
0 Kommentare
Akzeptierte Antwort
Andrei Bobrov
am 28 Jan. 2019
Bearbeitet: Andrei Bobrov
am 28 Jan. 2019
toeplitz(1:-.1:.6)
or
1 - abs((1:5) - (1:5)')*.1
1 Kommentar
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Logical finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!