Matlab - eliminar elemento repetido en un vector

   
Vista:

eliminar elemento repetido en un vector

Publicado por Xevi (7 intervenciones) el 23/08/2011 21:19:12
Buenas a todo el foro.
Se me plantea el siguiente problema a ver quien me puede ayudar,

si yo tengo un vector

a=[1 2 3 4 5 6 7 4 0 9 1]

y pretendo que se quede de esta forma:

a=[1 2 3 4 5 6 7 0 9]

es decir, que elimine los elementos que se repiten, pero intentado no borrar el primero, vamos que lo que se elimine sea la repetición.

es que tengo que eliminar elementos iguales del vector.

Muchas gracias de antemano a tod@s
y un cordial saludo
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
información
Otras secciones de LWP con contenido de Matlab
- Código fuente de Matlab
- Cursos de Matlab
- Temas de Matlab
- Chat de Matlab
información
Códigos de Matlab
- Fuerzas de Coulomb
- DÍAS DE LA SEMANA
- TRIÁNGULO
Imágen de perfil de JOSE JEREMIAS CABALLERO

eliminar elemento repetido en un vector

Publicado por JOSE JEREMIAS CABALLERO jjcc94@hotmail.com (3432 intervenciones) el 24/08/2011 05:03:10
Hola Xevi.
% ===============================
clear all;
a=[1 2 3 4 5 6 7 4 0 9 1];
k=1;
n=length(a);
while k<=n
j=1;
while j<=n
if k~=j
if a(k)==a(j)
a(j)=[];
n=length(a);
end
end
j=j+1;
end
k=k+1;
end
display(a);
%======================

ejecucion:
>> eliminar_elementos_repetidos
a =
1 2 3 4 5 6 7 0 9


saludos
JOSE JEREMIAS CABALLERO
ASESOR DE PROYECTOS CON MATLAB
PROFESOR DE METODOS NUMERICOS CON MATLAB
PROGRAMADOR MATLAB
jjcc94@hotmail.com
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

eliminar elemento repetido en un vector

Publicado por Xevi (7 intervenciones) el 24/08/2011 08:34:17
Vaya Jose eres un crack....
funciona a la perfección lo acabo de probar con otro vector y va genial
SOLUCIONADA la duda


si no fuera por tu ayuda en algunos momentos perdería días enteros para sacar pequeños problemas como este.

mil millones de gracias por tu ayuda.

saludos
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de JOSE JEREMIAS CABALLERO

eliminar elemento repetido en un vector

Publicado por JOSE JEREMIAS CABALLERO jjcc94@hotmail.com (3432 intervenciones) el 24/08/2011 15:12:27
hola Xevi.
Gracias por el cumplido!!
Entonces tu preguna fue RESUELTA!!.

saludos
JOSE JEREMIAS CABALLERO
ASESOR DE PROYECTOS CON MATLAB
PROFESOR DE METODOS NUMERICOS CON MATLAB
PROGRAMADOR MATLAB
jjcc94@hotmail.com
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

eliminar elemento repetido en un vector

Publicado por angel_kfx (1 intervención) el 15/11/2011 02:32:57
hola sr jose que buena ayuda la que brinda lo andaba buscando; lo trate de hacer de mil maneras; pero no pude; soy nuevo en este tema; y lo mejor lo entendi.

gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de JOSE JEREMIAS CABALLERO

eliminar elemento repetido en un vector

Publicado por JOSE JEREMIAS CABALLERO jjcc94@hotmail.com (3432 intervenciones) el 15/11/2011 15:28:08
De Nada.
Angel.
Es mi hobby programar en MATLAB. Lo hago como diversion.


saludos
JOSE JEREMIAS CABALLERO
ASESOR DE PROYECTOS CON MATLAB
PROFESOR DE METODOS NUMERICOS CON MATLAB
PROGRAMADOR MATLAB
jjcc94@hotmail.com
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

eliminar elemento repetido en un vector

Publicado por Miguel (1 intervención) el 30/11/2011 20:44:34
Hola

En la linea de este ejercicio si quiero eliminar todos los elementos que sean cero de un vector, como podria hacerlo??

Muchas gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de JOSE JEREMIAS CABALLERO

eliminar elemento repetido en un vector

Publicado por JOSE JEREMIAS CABALLERO jjcc94@hotmail.com (3432 intervenciones) el 01/12/2011 02:16:41
hola MIguel.
Hay una forma mas rapida:
1
2
3
4
5
>> a=[1 2 0 4 5 0 7 4 0 9 1];
>> [elemento, repitencia]=find(a==0);
>> a(repitencia)=[]
a =
     1     2     4     5     7     4     9     1



saludos
JOSE JEREMIAS CABALLERO
ASESOR DE PROYECTOS CON MATLAB
PROFESOR DE METODOS NUMERICOS CON MATLAB
PROGRAMADOR MATLAB
jjcc94@hotmail.com
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

No eliminar, contar repeticiones

Publicado por Jon (1 intervención) el 04/12/2012 11:20:39
Y si en lugar de borrar los repetidos quisiera contar cuantas veces se repite?
Sea el caso x='ABCDEEACCCEB'
y poder obtener:
A=2
B=2
C=4
D=1
E=3
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

eliminar elemento repetido en un vector

Publicado por Fco Javier Soberanes javier_soberanes@hotmail.com (4 intervenciones) el 29/12/2012 18:25:49
Buenos días, lamento decir que el código es ineficiente para vectores de gran longitud. Por favor eviten la inst. "for" y "while".
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de JOSE JEREMIAS CABALLERO

eliminar elemento repetido en un vector

Publicado por JOSE JEREMIAS CABALLERO jjcc94@hotmail.com (3432 intervenciones) el 31/12/2012 04:36:03
Bueno si no es eficiente, entonces cual seria la solución que tu planteas.
Además, Tú en ningún momento haz hecho tu pregunta en el foro. La respuesta es correcta para el usuario que pregunto.
Uno contesta de acuerdo al pedido del usuario. Es muy fácil decir el código es ineficiente, pero cuantas personas se dan un tiempo para poder contestar o ayudar a las personas que necesitan algo de matlab. Según veo, hasta el momento no haz ayudado a ninguna persona en el foro.



Saludos.
JOSE JEREMIAS CABALLERO
Asesor de Proyectos con Matlab
programador en matlab
Servicios de programación matlab
jjcc94@hotmail.com

http://matlabcaballero.blogspot.com
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

eliminar elemento repetido en un vector

Publicado por Fco Javier Soberanes javier_soberanes@hotmail.com (4 intervenciones) el 01/01/2013 02:47:49
Saludos asesor entiendo su punto. Siga asi. . No conocia el foro, pero pronto participare activo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

eliminar elemento repetido en un vector

Publicado por Fco Javier Soberanes javier_soberanes@hotmail.com (4 intervenciones) el 01/01/2013 03:25:13
Se me olvidaba el código.

1
2
3
4
5
6
7
8
9
10
11
12
13
clear all;
a=[1 2 0 4 5 0 7 4 0 9 1 1 1 2 4 5];
k=1;
n=length(a);
while k <= n
    [x,posicion] = find(a==a(k));
    posicion(1) = [];
    a(posicion) = [];
    n=length(a); k = k+1;
end
display(a);
 
 "  a = [1     2     0     4     5     7     9] "


Nótese que solo tiene un ciclo "while" y es más entendible que el anterior.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar
Imágen de perfil de JOSE JEREMIAS CABALLERO

eliminar elemento repetido en un vector

Publicado por JOSE JEREMIAS CABALLERO jjcc94@hotmail.com (3432 intervenciones) el 01/01/2013 13:52:08
Hay una infinidad de manera de resolver problema.
Si vas a hacer comparaciones cual es mas entendible.
bueno mira esta forma de hacerlo.
1
2
3
4
>> a=[1 2 0 4 5 0 7 4 0 9 1 1 1 2 4 5];
>> unique(a,'stable')
ans =
     1     2     0     4     5     7     9


Aqui hay dos puntos que debes tener en cuenta.
1. Quieres resolver el problema como sea, o quieres resolver un problema aprendiendo a programar.
Si quieres resolver un problema aprendiendo a programar, entonces la respuesta original que doy es las mas adecuada.
2.Ahora si solo quieres resolver como sea,entonces la respuesta que doy al final es la mas adecuada y eficiente.

Depende mucho cual es tu objetivo.


Saludos.
JOSE JEREMIAS CABALLERO
Asesor de Proyectos con Matlab
programador en matlab
Servicios de programación matlab
jjcc94@hotmail.com

http://matlabcaballero.blogspot.com
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

eliminar elemento repetido en un vector

Publicado por Fco Javier Soberanes javier_soberanes@hotmail.com (4 intervenciones) el 01/01/2013 19:47:37
la última que acabas de postear parece interesante, dime que ver. de MATLAB tienes 2012?, en la ver. 2010a no corre como tú lo muestras.

En fin se ve que eres muy bueno asesor. Dime tendras algun PDF con inst de MATLAB en formato de tabla, es decir,

. inst1 - acción.
. inst2 - acción.
. instN - ....

o bien corrigeme si tengo que postear esto en alguna otra parte del foro.

Saludos desde Guaymas, Sonora, México.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

eliminar elemento repetido en un vector

Publicado por RAFAEL rafaunacar@gmail.com (1 intervención) el 28/08/2014 17:19:25
Hola buen dia mtro. jose o alguien del foro que pueda ayudarme en este problemita:
como puedo eliminar las combinaciones que se repiten en los vectores de una matriz? es decir de esta matriz
a =

2 2 1
4 1 2
1 4 2
4 2 3
2 4 3

quiero eliminar las combinaciones 4 1 2 ó 1 4 2 ya que son la misma combinacion! y también 4 2 3 ó 2 4 3. El resultado debe quedarme
a =

2 2 1
4 1 2
4 2 3

Gracias, me han ayudado mucho !
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

eliminar elemento repetido en un vector

Publicado por Karen Ramírez (9 intervenciones) el 06/10/2014 16:49:17
Tengo solo una pregunta de tu programa, ¿qué es lo que se debe poner en los corchetes [ ] de las línas 7 y 8?
Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

eliminar elemento repetido en un vector

Publicado por luis zevallos hzluishz@gmail.com (2 intervenciones) el 09/11/2013 23:45:16
tu algoritmo esta vacan muy buana tu aporte.. tendras un libro que me pueda aprendar mas.. sobre el comando while.... y switch .. o ejemplos... tbm como eliminar los ceros ....ejemplo
A=[ 2 0 4 0 3 2 5 0 4 ] ....% respt A=[ 2 4 3 2 5 4 ] ...... no hay un comando que pueda eliminarte los ceros automaticamente en el MATLAB
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

eliminar elemento repetido en un vector

Publicado por luis zevallos hzluishz@gmail.com (2 intervenciones) el 10/11/2013 00:10:12
aaa sorry el ceros ya lo shizo jjcc94...el primer a porte me parece muy bueno...y asu aclaracion tbm...el segundo ...me parece malo... porq como lo dice eso se hace asi y alla.. pues no hay algoritmo.... para mejorlo ..a aprender a progrmar otras cosas.... ...saludos des Peru
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de JOSE JEREMIAS CABALLERO

eliminar elemento repetido en un vector

Publicado por JOSE JEREMIAS CABALLERO jjcc94@hotmail.com (3432 intervenciones) el 11/11/2013 02:11:36
1
2
3
4
5
6
7
8
9
10
11
>> A=[ 2 0 4 0 3 2 5 0 4]
 
A =
 
     2     0     4     0     3     2     5     0     4
 
>> b=A(find(A~=0))
 
b =
 
     2     4     3     2     5     4


Traten de hacer sus propias preguntas. Como son preguntas que se han hecho ya bastante tiempo, no me llega a mi correo las preguntas que ustedes agregran este pregunta y por lo general se queda sin contestar.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de JOSE JEREMIAS CABALLERO

eliminar elemento repetido en un vector

Publicado por JOSE JEREMIAS CABALLERO jjcc94@hotmail.com (3432 intervenciones) el 21/01/2014 23:36:53
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
Hola Xevi.
 % ===============================
 clear all;
 a=[1 2 3 4 5 6 7 4 0 9 1];
 k=1;
 n=length(a);
 while k<=n
 j=1;
 while j<=n
 if k~=j
 if a(k)==a(j)
 a(j)=[];
 n=length(a);
j=j-1;
 end
 end
 j=j+1;
 end
 k=k+1;
 end
 display(a);
 %======================
 
 ejecucion:
 >> eliminar_elementos_repetidos
 a =
 1 2 3 4 5 6 7 0 9
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

eliminar elemento repetido en un vector de strings

Publicado por David rodriguezcdavid.act@gmail.com (1 intervención) el 15/07/2014 01:49:05
Buen día JOSE JEREMIAS CABALLERO
lo que pasa es que quisiera saber como hacer lo mismo pero con strings
por ejemplo
a= [ 'pedro' 'juan' 'jorge' 'juan']
y que me quede
[ 'pedro' 'juan' 'jorge']
y lo mismo para saber la posición de un elemento por ejemplo 'juan' y que me diga
ans = 2, 4
gracias, espero tu amable respuesta
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

eliminar elemento repetido en un vector

Publicado por Karen Ramírez (9 intervenciones) el 06/10/2014 16:51:32
Tengo una duda, ¿que es lo que se debe poner dentro del los corchetes [ ] de la línea 12 de su programa?
Gracias
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de JOSE JEREMIAS CABALLERO

eliminar elemento repetido en un vector

Publicado por JOSE JEREMIAS CABALLERO jjcc94@hotmail.com (3432 intervenciones) el 07/10/2014 19:10:18
No se pone nada.
la pregunta se resuelve de esa manera.


Saludos.
JOSE JEREMÍAS CABALLERO
Asesoría online y Presencial en Matlab
programador en matlab
Servicios de programación matlab
jjcc94@hotmail.com
Estimado Usuario de Matlab, el correo es para servicios de cursos, asesoría y programación. Toda ayuda gratuita es vía foro.


http://matlabcaballero.blogspot.com

http://www.lawebdelprogramador.com/foros/Matlab/1371532-FORMA_DE_APRENDER_MATLAB.html
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

eliminar elemento repetido en un vector

Publicado por joan joanpa13.cc@gmail.com (3 intervenciones) el 06/08/2015 20:04:24
Hola a la comunidad del Foro!

Tengo una matriz(480x640) y deseo eliminar una fila o columna en caso que un elemento se repita mas de 5 veces en la misma fila o columna.

Gracias.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

eliminar elemento repetido en un vector

Publicado por Lag (1 intervención) el 28/12/2013 15:49:12
Perdone, pero mi duda es con k y j a que se refiere?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

eliminar elemento repetido en un vector

Publicado por rozapraus (1 intervención) el 25/01/2013 16:34:34
Gracias a todos y en especial a Fco Javier
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar