How can I print row number to matrix in matlab?

5 visualizzazioni (ultimi 30 giorni)
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 Commenti
Jan
Jan il 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 il 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?

Accedi per commentare.

Risposta accettata

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

Più risposte (1)

Stephen23
Stephen23 il 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

Categorie

Scopri di più su Matrices and Arrays in Help Center e File Exchange

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by