How to find the location of the first cell which contains a specific value in an array?
2 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
I have an array, all the cells are either with value 0 or value 1.
For each row, I need to find the location in form of (row, column) for the fist cell with value 1 in this row, and the location for the last cell with value 1 in this same row.
Then I will repeat this to all the other rows of the matrix.
I used double for loop, but I did succeed in storing the cell locations.
Can anyone help me?
Thank you.
0 Kommentare
Akzeptierte Antwort
per isakson
am 9 Sep. 2014
Bearbeitet: per isakson
am 10 Sep. 2014
I'm not sure what you mean by "cell". Hint:
m = randi( [0,1], [12,12] );
n = nan( 2, 12 );
for jj = 1 : size( m, 2 )
n(:,jj) = [ find( m(:,jj)==1, 1, 'first' )
find( m(:,jj)==1, 1, 'last' ) ];
end
I'm not sure how it behaves if there is no value, 1, in a column.
6 Kommentare
Weitere Antworten (0)
Siehe auch
Kategorien
Mehr zu Shifting and Sorting Matrices 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!