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
Imágen de perfil de JOSE JEREMIAS CABALLERO
Val: 6.975
Oro
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

eliminar elemento repetido en un vector

Publicado por JOSE JEREMIAS CABALLERO (5917 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
[email protected]
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
2
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
2
Comentar
Imágen de perfil de JOSE JEREMIAS CABALLERO
Val: 6.975
Oro
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

eliminar elemento repetido en un vector

Publicado por JOSE JEREMIAS CABALLERO (5917 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
[email protected]
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
1
Comentar
Imágen de perfil de JOSE JEREMIAS CABALLERO
Val: 6.975
Oro
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

eliminar elemento repetido en un vector

Publicado por JOSE JEREMIAS CABALLERO (5917 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
[email protected]
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
Val: 6.975
Oro
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

eliminar elemento repetido en un vector

Publicado por JOSE JEREMIAS CABALLERO (5917 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
[email protected]
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

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

Numeros repetidos

Publicado por Isabel (2 intervenciones) el 29/07/2021 08:39:35
me podrias ayudar en algo ::( es para mañana y no entiendo :(


%Realizar una matriz de NxM que permite ingresar números mayores de 0 y menores de 100 aleatoriamente, que no se repitan en la matriz y que permita validad el tamaño de la matriz para que no exceda el rango de números permitidos

%Ejecutar el comando rng('shuffle') para que no haya repeticiones

rng('shuffle')

%Emplear comando randi para aleatorios enteros

r=randi([1 99], 5, 4 );

size=(r)




lo hice pero los valores continuan repitiendose que hago :(
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
Val: 6.975
Oro
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

Numeros repetidos

Publicado por JOSE JEREMIAS CABALLERO (5917 intervenciones) el 29/07/2021 19:01:33
1
2
3
4
5
6
7
8
>> aleatorios3
 
A =
 
     4     1    37    46    84    55    57    42     5    41    19     8    12    17    23    73    26    39    27    97    72    45     7    31
    38    95    79    58     2    91    87    54    86    10    88    78    14    11    30    15    61    60    21    25     9    48    92    63
    74    29    66    89    18    13    62    22    69     3    43    77    98    40    65    85    80    75    32    81    24    52    64    34
    51    94    71    59    82    99    49    76    50    53    56    67    33    28    47    93    70    96    83    35    16    90    68    44

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
>> aleatorios3
 
A =
 
    83    11    24    18    26    46    27    29    97    61    10    79     2    25    49     3    80    31    44    91    50    60    41    62
    93    54    52    87    12     1    20    57    19    68    64    65    67    78    15    76    72    77    75    32    17    36    73    85
    89    88    96    37    28    84     4    35    66    22    82    16    38    42    56    98     8     5     7    69    23    14    86    59
    71    92    13    40    70    63    95    94    81    34    99    21    39    53     9    90    30    74    51    43    47    45    48    55
 
>> aleatorios3
 
A =
 
    36    89    38    35    19     6    16    18    39     8    82    28    34    13    10    32    46    33    57    76    14    80    62    47
    97     3     7    95    81    65    50     4     1    20    25    71    92    53    37    55    41    21    68    70    24    48    85    87
    88    22    42    27    58    31    23    64    94    61    90    91    66    43    29    93    49    77    12    79    73    17    63    78
    96    84    51    72    26    67    83    60    98    44    45    69    59    75    74    30    52     5    56    11    86     2    40    15
 
>> aleatorios3
 
A =
 
    88    81    21    68    63    95    27    12    57    28    42     1    92    62     8    61    75    76    32    52    65    17    86     3
    11    69    77    31    25    19    48    39    87    90    47    16    74    51    34    43     5    23    20    35    79    67    41    71
    33    24    30    36    84    99    73    58    59    22    85    72    89    98    13    66    55    26    91    14    45    64     6    15
    70    97     2    78    94    93    83    37    49    56    18    29    80    10    96    54    50    53    60    44    82     4     7    40
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
Val: 6.975
Oro
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

Numeros repetidos

Publicado por JOSE JEREMIAS CABALLERO (5917 intervenciones) el 29/07/2021 19:02:45
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
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
>> aleatorios3
 
A =
 
     2    80    77    65     5
    22    43     8    74    97
    50    33    64    69    91
    63    78    84    60    67
 
>> aleatorios3
 
A =
 
    82    99    54    97    36
    24    59    73     5    20
    49    58    34    35    29
    79    50    41    21     8
 
>> aleatorios3
 
A =
 
    28    51     9    34    22
    46    67    77    50    36
    94    71     7    25    32
     6    63    75    69    41
 
>> aleatorios3
 
A =
 
    11    89    98    27    73
    48    23    70    49    38
    57    86    58     5     6
    65    87    13    83     8
 
>> aleatorios3
 
A =
 
    44    27    61    87    29
    45    94     3     7    72
    74    99    51     9    59
    84    47    79    56    76
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 (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
Val: 6.975
Oro
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

eliminar elemento repetido en un vector

Publicado por JOSE JEREMIAS CABALLERO (5917 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
[email protected]

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 (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 (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
2
Comentar
Imágen de perfil de JOSE JEREMIAS CABALLERO
Val: 6.975
Oro
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

eliminar elemento repetido en un vector

Publicado por JOSE JEREMIAS CABALLERO (5917 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
[email protected]

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
1
Comentar

eliminar elemento repetido en un vector

Publicado por Fco Javier Soberanes (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
0
Comentar
sin imagen de perfil

eliminar elemento repetido en un vector

Publicado por RAFAEL (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
sin imagen de perfil
Val: 5
Ha aumentado su posición en 20 puestos en Matlab (en relación al último mes)
Gráfica de Matlab

eliminar elemento repetido en un vector

Publicado por Guillermo (1 intervención) el 21/07/2018 12:52:17
El que se pica, ajos come, Jose :)
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 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 (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
1
Comentar

eliminar elemento repetido en un vector

Publicado por luis zevallos (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
1
Comentar

eliminar elemento repetido en un vector

Publicado por luis zeballos (1 intervención) el 31/03/2017 04:00:04
gracias por el aporte
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
Val: 6.975
Oro
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

eliminar elemento repetido en un vector

Publicado por JOSE JEREMIAS CABALLERO (5917 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
Val: 6.975
Oro
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

eliminar elemento repetido en un vector

Publicado por JOSE JEREMIAS CABALLERO (5917 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 (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
Val: 6.975
Oro
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

eliminar elemento repetido en un vector

Publicado por JOSE JEREMIAS CABALLERO (5917 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
[email protected]
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
sin imagen de perfil

eliminar elemento repetido en un vector

Publicado por Tomas (3 intervenciones) el 13/12/2016 14:53:20
Hola a todos, tengo esta situación: tengo 4 vectores con fechas, de esta forma:
A = [2000153 2000154 2000155 2000156 2000157]; % fecha donde los últimos 3 son día juliano dentro del año, es decir 1 al 5 de junio de 2000
B = [2000153 200015 2000156 2000157 2000158];
C = [2000152 2000153 2000154 2000155 2000156];
D = [20000601 20000602 20000603 20000604 20000605]; % fecha del 1 al 5 de junio de 2000
Lo que quiero hacer es comparar los vectores A, B, C y D de tal forma que elimine de estos 4 vectores los elementos que no estén repetidos y dejar únicamente los que se repiten, quedando así:
A = [2000153 2000155 2000156];
B = [2000153 200015 2000156];
C = [2000153 2000155 2000156];
D = [20000601 20000603 20000604];

PD: Como ejemplo coloque pocos elementos por vector pero podría tener hasta 190 elementos en cada vector.

Agradezco que me puedan ayudar porque tengo un tiempo en esto y aun no avanzo.
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
Val: 6.975
Oro
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

eliminar elemento repetido en un vector

Publicado por JOSE JEREMIAS CABALLERO (5917 intervenciones) el 03/01/2019 22:06:09
a(j)=[], significa que la posición j del vector a se elimina. [ ] representa el vector vector vació.
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
sin imagen de perfil

eliminar elemento repetido en un vector

Publicado por joan (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 Nelson Diaz (3 intervenciones) el 03/01/2019 21:59:50
Consigui hacerlo profesor disculpe la pregunta anterior habia colocado el algoritmo errado.
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 gerardo (1 intervención) el 10/02/2018 21:23:50
No funciona para A=ones(1,5). puede fallar para casos m'as complejos
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
Val: 6.975
Oro
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

eliminar elemento repetido en un vector

Publicado por JOSE JEREMIAS CABALLERO (5917 intervenciones) el 03/01/2019 21:45:19
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
% ===============================
 clear all;
 %a=[1 2 3 4 5 6 7 4 0 9 1]
% a=[1 1 1 1 3 5 7 0 1 1]
 %a=[1 1 1 1 1 1 1 1 1 2] 
 a=ones(1,5)
 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);


1
2
3
4
5
6
7
8
9
10
>> eliminar_elementos_repetidos1
 
a =
 
     1     1     1     1     1
 
 
a =
 
     1
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 Victoria (1 intervención) el 29/11/2018 05:03:04
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 Nelson Diaz (3 intervenciones) el 03/01/2019 21:25:18
Profesor disculpe pero este algoritmo no funciona para casos particulares como por ejemplo que el vector tenga todos los elementos iguales , o los tres primeros sean iguales. por ejemplo pruebe con el vector a=[1 1 1 1 3 5 7 0 1 1] y da error de excedencia de bordes. y con el vector
a=[1 1 1 1 1 1 1 1 1 2] da a=[1 1 2].... quisiera saber si conoce algun algoritmo basico donde no use la funcion find de MATLAB pero que funcione para cualquier caso? voy a seguir intentando modificar el suyo a ver si lo logro

Gracias de antemano.
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
Val: 6.975
Oro
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

eliminar elemento repetido en un vector

Publicado por JOSE JEREMIAS CABALLERO (5917 intervenciones) el 03/01/2019 21:35:50
Estimado Nelson.
¿cual algoritmo no funciona?

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
% ===============================
 clear all;
 %a=[1 2 3 4 5 6 7 4 0 9 1]
% a=[1 1 1 1 3 5 7 0 1 1]
% a=[1 1 1 1 1 1 1 1 1 2] 
a=ones(1,5)
 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);


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
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
>> eliminar_elementos_repetidos
 
a =
 
     1     2     3     4     5     6     7     4     0     9     1
 
 
a =
 
     1     2     3     4     5     6     7     0     9
 
>> eliminar_elementos_repetidos
 
a =
 
     1     1     1     1     3     5     7     0     1     1
 
 
a =
 
     1     3     5     7     0
 
>> eliminar_elementos_repetidos
 
a =
 
     1     1     1     1     1     1     1     1     1     2
 
 
a =
 
     1     2
 
>> eliminar_elementos_repetidos
 
a =
 
     1     1     1     1     1
 
 
a =
 
     1
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 Nelson Diaz (3 intervenciones) el 03/01/2019 22:02:09
Era que no habia copiado el j=j-1 mil disculpas.... y gracias por responder
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
Val: 6.975
Oro
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

eliminar elemento repetido en un vector

Publicado por JOSE JEREMIAS CABALLERO (5917 intervenciones) el 03/01/2019 22:10:42
En el mundo de la programación, basta una coma(,) basta dos puntos(:), vasta cambiar una letra mayúscula por minúscula y habrá error y el código fallará. Por eso se tiene que tener mucho cuidado al momento de codificar.
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
sin imagen de perfil
Val: 4
Ha aumentado su posición en 37 puestos en Matlab (en relación al último mes)
Gráfica de Matlab

eliminar elemento repetido en un vector

Publicado por Javi (1 intervención) el 07/05/2021 08:36:22
Hola.
Soy nuevo en esto de empezar a programar. Buscando resolver un problema encontré este foro y este hilo.

Es posible que ese código tenga un problema si al analizar el último bucle del while k elimina un término en uno de los j?

Gracias. Se que el hilo es muy antiguo y que hay funciones de matlab como "unique" u otros métodos mucho más optimos pero en mi asignatura de momento solo puedo usar bucles y poco más.

P.d. he visto que luego se cambió y se puso un j=j-1 cuando elimina un término para volver a analizar ese índice. Yo lo solucioné introduciendo en el segundo while j<=n && k<=n para que cuando elimina un elemento del inicio en el ultimo bucle no tenga problemas.
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
-1
Comentar

eliminar elemento repetido en un vector

Publicado por David (2 intervenciones) el 14/03/2017 18:37:22
a=[1 2 3 4 5 6 7 4 0 9 1];

unique(a)
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 ncontrerasn (1 intervención) el 28/10/2020 17:15:11
1
disp(unique(a, 'stable'));

'stable' es una bandera del método unique que deja los elementos de a en el orden original quitando los repetidos que están al final.
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