Changing numbers in a matrix with new numbers

2 次查看(过去 30 天)
I have a matrix A:
A=
0 0 1 0 0
1 0 0 0 1
0 0 1 0 1
Then with some functions I find the coordinates of the 1 in the matrix and apply a code, after that those ones wont be ones anymore, will be a different number. How can I put the new numbers in the matrix, changing the ones with the new numbers?
In other words, I would like something like this:
B=
0 0 7 0 0
6 0 0 0 7.6
0 0 8 0 8.1
I am going to put my code for easier understanding. Thank you!

采纳的回答

Walter Roberson
Walter Roberson 2014-2-1
A(logical(A)) = [6 7 8 8.6 8.1];
  3 个评论
Walter Roberson
Walter Roberson 2014-2-1
A = A.';
A(logical(A)) = [2 2.2 2.3 2.4];
A = A.';
MATLAB always goes down columns when assigning multiple values, not across rows.

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Matrix Indexing 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by