How to replace duplicate elements as 0 in column matrix

3 views (last 30 days)
I need to replace the repeated elements in column of a matrix as 0's and delete the rows which has all 0's. If my matrix is like this means. Input =
1 0 0 1
0 1 0 1
0 0 1 1
1 1 1 1
My expected output should be like this
Output =
1 0 0 1
0 1 0 0
0 0 1 0
0 0 0 0 ---> this row should be get deleted in this case

Accepted Answer

Andrei Bobrov
Andrei Bobrov on 21 Mar 2016
Edited: Andrei Bobrov on 21 Mar 2016
Output = cumsum(cumsum(Input)) == 1;
Output = Output(any(Output,2),:)

More Answers (0)

Categories

Find more on Shifting and Sorting Matrices in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!