Como detectar los valores que se repiten "seguidos" en un vector
Publicado por Guille (10 intervenciones) el 15/01/2013 15:54:05
Hola,
Quería aprovechar este estupendo foro para plantear una duda-problema:
Lo explico directamente desde el ejemplo a fin de hacer más fácil la comprensión.
Tengo un vector: chu = []
8
4
34
56
78
89
89
2
4
2
89
5
...
Objetivo:
Eliminar ¡y solo una vez! del vector, los valores que se repiten ¡seguidos!,
es decir, "chu2" quedaría así,
8
4
34
56
78
89
2
4
2
89
5
...
He realizado el siguiente scrypt, aunque el problema es que me da el # total de repeticiones que hay en el vector, y no la posición de las mismas, de manera que en la última parte no puedo eliminarlas del vector "chu" el cual es mi objetivo principal. A fin de aprender¿Alguien puede explicarme tmb donde está mi error?
repet= []; % elim. Block Repetition
for ii= 1:length(chu)-1
repe = find(chu(chu(ii)==chu(ii+1)));
repet= [repet; repe];
end
no_repe=(chu(repet));
GRACIAS de antemano a todo el que se tome el tiempo de comprender el problema!
Saludos =)
Quería aprovechar este estupendo foro para plantear una duda-problema:
Lo explico directamente desde el ejemplo a fin de hacer más fácil la comprensión.
Tengo un vector: chu = []
8
4
34
56
78
89
89
2
4
2
89
5
...
Objetivo:
Eliminar ¡y solo una vez! del vector, los valores que se repiten ¡seguidos!,
es decir, "chu2" quedaría así,
8
4
34
56
78
89
2
4
2
89
5
...
He realizado el siguiente scrypt, aunque el problema es que me da el # total de repeticiones que hay en el vector, y no la posición de las mismas, de manera que en la última parte no puedo eliminarlas del vector "chu" el cual es mi objetivo principal. A fin de aprender¿Alguien puede explicarme tmb donde está mi error?
repet= []; % elim. Block Repetition
for ii= 1:length(chu)-1
repe = find(chu(chu(ii)==chu(ii+1)));
repet= [repet; repe];
end
no_repe=(chu(repet));
GRACIAS de antemano a todo el que se tome el tiempo de comprender el problema!
Saludos =)
Valora esta pregunta


0