MATLAB: How to replace duplicate elements as 0 in column matrix

matlab matrix

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

Best Answer

Output = cumsum(cumsum(Input)) == 1;
Output = Output(any(Output,2),:)
Related Question