Matlab - Eliminar elementos pero de dos vectores MATLAB.

 
Vista:

Eliminar elementos pero de dos vectores MATLAB.

Publicado por Romeo (5 intervenciones) el 28/09/2015 04:29:46
Buenas noches, espero me puedan ayudar, estoy atorado con lo siguiente:
Si tengo dos vectores A y B
A=[3,4,2,5,6,1,7] y B=[21,22,23,24,25,26,27]
Dado que son del mismo tamaño,
Quiero eliminar los elementos que son menores al anterior en A, pero también eliminar los de la misma posición de B, es decir que quede de la siguiente manera:
A=[3,4,5,6,7] y B=[21,22,24,25,27]

Necesito de su ayuda si fueran tan amables, gracias.
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 Royeth
Val: 3.309
Plata
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

Eliminar elementos pero de dos vectores MATLAB.

Publicado por Royeth (1818 intervenciones) el 28/09/2015 04:50:17
1
2
3
4
5
6
7
8
9
10
11
12
A=[3,4,2,5,6,1,7]; B=[21,22,23,24,25,26,27];
k=1;
while k~=length(A)
    if A(k+1)<A(k)
A(k+1)=[];
B(k+1)=[];
    else
        k=k+1;
    end
end
disp(A)
disp(B)

Saludos Romeo
https://www.facebook.com/royethmatlab
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 elementos pero de dos vectores MATLAB.

Publicado por Romeo (5 intervenciones) el 28/09/2015 04:59:26
Gracias Royeth, saludos, en lo que te pueda ayudar estoy disponible, 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 Daniel
Val: 269
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

Eliminar elementos pero de dos vectores MATLAB.

Publicado por Daniel (264 intervenciones) el 28/09/2015 17:30:44
También puedes utilizar esto (que no tienes que hacer un loop)

1
2
3
4
5
6
A=[3,4,2,5,6,1,7];
B=[21,22,23,24,25,26,27];
 
An=A;
A=A(diff([1 An])>0);
B=B(diff([1 An])>0);

Saludos

Daniel
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 Royeth
Val: 3.309
Plata
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

Eliminar elementos pero de dos vectores MATLAB.

Publicado por Royeth (1818 intervenciones) el 28/09/2015 17:41:23
lo que pasa es que si se hace así presenta problemas cuando vienen dos números seguidos por ejemplo :
1
2
A=[3,4,2,3,5,6,1,7];
B=[21,22,23,24,25,26,27,28];

te devuelve
1
2
3     4     3     5     6     7
21    22    24    25    26    28

y no elimina el 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