Simple Matrix Reduction Question. Ones and Zeros.

2 Ansichten (letzte 30 Tage)
Chad
Chad am 1 Apr. 2020
Beantwortet: Stephen23 am 1 Apr. 2020
I have a NxM matrix full of ones and zeros. Each row (1:N) has exactly one, one, somewhere along of the columns. I want to make a matrix Nx1 which shows which columns the ones appeared in. Example:
A = [ 0 0 0 1; 1 0 0 0; 0 1 0 0; 0 0 1 0]
B = [ 4 ; 1 ; 2 ; 3 ]
Should be very simple?

Akzeptierte Antwort

Birdman
Birdman am 1 Apr. 2020
Bearbeitet: Birdman am 1 Apr. 2020
[rows,cols]=find(A==1);
[C,I]=sort(rows);
B=cols(I)

Weitere Antworten (1)

Stephen23
Stephen23 am 1 Apr. 2020
Simpler:
>> [B,~] = find(A.')
B =
4
1
2
3

Kategorien

Mehr zu Matrices and Arrays 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!

Translated by