How can I print row number to matrix in matlab?

6 views (last 30 days)
How can I print row number to matrix in matlab?
I have a matrix and I want to print the row number on the cells that write 1 in this matrix. How can I do it?
Maybe it will be clearer if I explain with an example.
first row 1 0 1
second row 0 0 1
third row 1 1 0
fourth row 0 1 1
This is my matrix. I want to convert this matrix to this with code:
first row 1 0 1
second row 0 0 2
third row 3 3 0
fourth row 0 4 4
The values of 1 in the second row got the value 2 because they were in the second row, those in the third row got the value 3. 0 values remained the same. How can I do this in a large matrix?
thank u
  2 Comments
Jan
Jan on 16 Mar 2022
The question is not clear yet. Numerical matrices have "elements". "Cells" are found in cell arrays.
If your matrix is:
M = rand(2, 3)
what is the wanted result?
Berfin Çetinkaya
Berfin Çetinkaya on 17 Mar 2022
Maybe it will be clearer if I explain with an example.
first row 1 0 1
second row 0 0 1
third row 1 1 0
fourth row 0 1 1
This is my matrix. I want to convert this matrix to this with code:
first row 1 0 1
second row 0 0 2
third row 3 3 0
fourth row 0 4 4
The values of 1 in the second row got the value 2 because they were in the second row, those in the third row got the value 3. 0 values remained the same. How can I do this in a large matrix?

Sign in to comment.

Accepted Answer

David Hill
David Hill on 17 Mar 2022
M=randi(2,10,3)-1;%sample matrix
newM=M.*(1:size(M,1))';

More Answers (1)

Stephen23
Stephen23 on 17 Mar 2022
M = [1 0 1; 0 0 1; 1 1 0; 0 1 1]
M = 4×3
1 0 1 0 0 1 1 1 0 0 1 1
V = 1:size(M,1);
Z = V(:).*M
Z = 4×3
1 0 1 0 0 2 3 3 0 0 4 4

Categories

Find more on Resizing and Reshaping Matrices in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!