How to linearly change values in matrix
2 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
Hanna Haponenko
el 28 de En. de 2019
Editada: Hanna Haponenko
el 28 de En. de 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 comentarios
Respuesta aceptada
Andrei Bobrov
el 28 de En. de 2019
Editada: Andrei Bobrov
el 28 de En. de 2019
toeplitz(1:-.1:.6)
or
1 - abs((1:5) - (1:5)')*.1
1 comentario
Más respuestas (0)
Ver también
Categorías
Más información sobre Logical en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!