How to replace duplicate elements as 0 in column 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

 Respuesta aceptada

Andrei Bobrov
Andrei Bobrov el 21 de Mzo. de 2016
Editada: Andrei Bobrov el 21 de Mzo. de 2016
Output = cumsum(cumsum(Input)) == 1;
Output = Output(any(Output,2),:)

Más respuestas (0)

Categorías

Etiquetas

Preguntada:

el 21 de Mzo. de 2016

Editada:

el 21 de Mzo. de 2016

Community Treasure Hunt

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

Start Hunting!

Translated by