Matlab - Localizador de numeros en una matriz...

 
Vista:
sin imagen de perfil

Localizador de numeros en una matriz...

Publicado por Diego Zamora (20 intervenciones) el 23/10/2011 01:20:29
Saludos! ocupo alguna forma de poder lograr hacer lo siguiente en Matlab tengo la siguiente matriz llamada idis:
idis =
3.00
4.00
3.00
4.00
y despues tengo la matriz:
idsta =
1.00
2.00
3.00
4.00
despues tengo la matriz:
nosta =
3640.16
3002.38
3762.80
2478.36
lo que quiero formar es lo siguien una matriz igual a la idis pero con sus respectivos valores en nosta y todo ponerlo en una nueva matriz esta matriz seria algo asi:
Matriz nueva=
3762.80
2478.36
3762.80
2478.36
como pueden ver los valores q estan idis los quiero agarrar de nosta teniendo como referencia la matriz idsta. es algo asi como el comando buscar que tiene excel... lo q no se es como hacerlo en matlab...
por ahi tengo algo pero es muy primitivo:
v=find(idsta==3)
v=3
a=nosta(v)
a=3762.30
evididentemente esto deberia ir dentro de un bucle pero no se como hacer el bucle! si alguien me puede ayudar muchas gracias! no soy programador por eso pido ayuda! gracias de antemano!
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

Localizador de numeros en una matriz...

Publicado por JOSE JEREMIAS CABALLERO (5917 intervenciones) el 23/10/2011 04:44:36
hola Diego.
algo asi quieres.
%===========================
clear all,
idis=[3; 4; 3; 4];
nosta =[3640.16; 3002.38; 3762.80; 2478.36],
MATRIZ_NUEVA=nosta(idis)
%=====================

EJECUCION
>>cambiar_matriz
nosta =
1.0e+003 *
3.6402
3.0024
3.7628
2.4784


MATRIZ_NUEVA =
1.0e+003 *
3.7628
2.4784
3.7628
2.4784

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
sin imagen de perfil

Localizador de numeros en una matriz...

Publicado por Diego Zamora (20 intervenciones) el 23/10/2011 05:26:39
y yo haciendo ciclos y usando comandos de programación de verdad gracias... no sabes todo lo que he tratado de hacer para lograrlo.. es mas casi lo logre por medio de programacion... pero solo podia arojarme una matriz de 2 filas... es mas aca esta el codigo fuente:
v=length(idis);
r=rank(idis);
for j=idis
b=find(idsta==j);
a=nosta(b);
c=[a];
end
disp(c)

pero eso me da:
c =
3762.80
2478.36

pero como podria ser programado tienes idea?
y definitivamente sirve aunq la matriz idis sea de la n filas que quiera siempre funciona! reitero mi agradecimiento!
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