How to delete repeated elements in column

1 visualización (últimos 30 días)
Pat
Pat el 20 de Mzo. de 2016
Comentada: Pat el 20 de Mzo. de 2016
I have 10x4 array with strings say
D={'Run' '' 'play' '';
'' 'go' '' 'sit' ;
'Run' '' 'play' '';
'' 'go' '' 'sit';
'' 'down' '' 'play';
'' 'go' '' 'sit'}
I want to remove consecutive elements in each column such that i get result as
res={'Run' '' 'play' '';
'' 'go' '' 'sit' ;
'' '' '' '';
'' '' '' '';
'' 'down' '' 'play';
'' 'go' '' 'sit'}
I tried using for loop and deleting ,the thing is that all elements with same names get deleted.
Kindly help
  2 comentarios
Image Analyst
Image Analyst el 20 de Mzo. de 2016
Why? What's the use case for this request?
Pat
Pat el 20 de Mzo. de 2016
i want to remove consecutive duplicates for next stage of processing

Iniciar sesión para comentar.

Respuesta aceptada

Azzi Abdelmalek
Azzi Abdelmalek el 20 de Mzo. de 2016
D={'Run' '' 'play' '';
'' 'go' '' 'sit' ;
'Run' '' 'play' '';
'' 'go' '' 'sit';
'' 'down' '' 'play';
'' 'go' '' 'sit'}
ii=unique(D);
v=0:numel(ii);
b=cellfun(@(x) v(ismember(ii,x)),D);
[n,m]=size(D);
c=b;
for l=1:m
for k=2:n
q=b(1:k-1,l);
idx=find(q,1,'last');
if b(k,l)==q(idx) ;
c(k,l)=0;
end
end
end
out=ii(c+1)
  1 comentario
Pat
Pat el 20 de Mzo. de 2016
Thanks Azzi,it helped me a lot.can u suggest a book for matlab programming

Iniciar sesión para comentar.

Más respuestas (0)

Categorías

Más información sobre Logical en Help Center y File Exchange.

Community Treasure Hunt

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

Start Hunting!

Translated by