How to find the column index of the first nonzero element for every row of a given matrix

1 view (last 30 days)
Dear all,
I have the following matrix
A=[1 1 1 1; 0 1 1 1; 0 0 0 1; 0 0 1 1; 0 1 1 1]
A = 5×4
1 1 1 1 0 1 1 1 0 0 0 1 0 0 1 1 0 1 1 1
and I would like to get an output vector v listing the column indices of the first nonzero element for every row of A:
v=[1;2;4;3;2]
v = 5×1
1 2 4 3 2
How can I do this? Thanks in advance, I appreciate your time and help.

Accepted Answer

Arif Hoq
Arif Hoq on 6 Mar 2022
you can find your answer here
Just follow this:
A=[1 1 1 1; 0 1 1 1; 0 0 0 1; 0 0 1 1; 0 1 1 1];
[~,output]=max(A,[],2)
output = 5×1
1 2 4 3 2

More Answers (0)

Community Treasure Hunt

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

Start Hunting!