Matlab - Encontrar valores y posiciones de una matriz que se referente a otra matriz.

 
Vista:
sin imagen de perfil
Val: 352
Ha disminuido 1 puesto en Matlab (en relación al último mes)
Gráfica de Matlab

Encontrar valores y posiciones de una matriz que se referente a otra matriz.

Publicado por Ricardo (218 intervenciones) el 01/10/2019 03:16:34
Hola !!! Buenos días.
Espero que puedan ayudarme.

Tengo dos matrices
A = [2 4 7];
B = [3 4 6
        1 5 7
        2 8 9
        9 2 4];
Del el primer elemento de la matriz A, encontrar la posición y el valor en la primera columna de la matriz B
Del el segundo elemento de la matriz A, encontrar la posición y el valor en la segunda columna de la matriz B
Del el tercer elemento de la matriz A, encontrar la posición y el valor en la tercera columna de la matriz B
Al final tendré dos vectores;
Uno con los valores 2, 4, 7 y el otro con las posiciones 3, 1, 2

En realidad, la matriz A es 1 X 18 y la matriz B tiene 720 X 18

Muchas gracias por su ayuda.
Saludos.
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 JESUS DAVID ARIZA ROYETH
Val: 3.309
Plata
Ha mantenido su posición en Matlab (en relación al último mes)
Gráfica de Matlab

Encontrar valores y posiciones de una matriz que se referente a otra matriz.

Publicado por JESUS DAVID ARIZA ROYETH (1818 intervenciones) el 01/10/2019 15:37:31
1
2
3
4
5
6
A = [2 4 7];
B = [3 4 6
        1 5 7
        2 8 9
        9 2 4];
[~,n3]=max(A==B)
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

Encontrar valores y posiciones de una matriz que se referente a otra matriz.

Publicado por JOSE JEREMIAS CABALLERO (5917 intervenciones) el 01/10/2019 16:10:21
1
2
3
4
A = [2 4 7]
B = [3 4 6; 1 5 7;2 8 9;9 2 4]
[a,~]=find(B==A);
a=a'

1
2
3
4
5
6
7
8
9
10
11
12
13
A =
     2     4     7
 
 
B =
     3     4     6
     1     5     7
     2     8     9
     9     2     4
 
 
a =
     3     1     2
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: 352
Ha disminuido 1 puesto en Matlab (en relación al último mes)
Gráfica de Matlab

Encontrar valores y posiciones de una matriz que se referente a otra matriz.

Publicado por Ricardo (218 intervenciones) el 01/10/2019 17:21:10
Buenos días.

Obtuve lo siguiente, aplicando el código:
_________________________________

Error using ==
Matrix dimensions must agree.

Error in jers (line 246)
[a,~]=find(B==A);
_________________________________
Este es el código introducido:
_________________________________
A = [2 4 7]
B = [3 4 6; 1 5 7;2 8 9;9 2 4]
[a,~]=find(B==A);
a=a'
________________________________

Pero a usted si le funciono
Que tengo mal?
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
sin imagen de perfil
Val: 352
Ha disminuido 1 puesto en Matlab (en relación al último mes)
Gráfica de Matlab

Encontrar valores y posiciones de una matriz que se referente a otra matriz.

Publicado por Ricardo (218 intervenciones) el 01/10/2019 17:16:43
Buenos días.

Aplique el código y me arroya este resultado:

Error using ==
Matrix dimensions must agree.

Error in jers (line 249)
[~,n3]=max(A==B)

Que podrá ser?
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

Encontrar valores y posiciones de una matriz que se referente a otra matriz.

Publicado por JOSE JEREMIAS CABALLERO (5917 intervenciones) el 01/10/2019 17:38:04
podría subir la imagen de matlab donde está el error y el código en imagen también.
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: 352
Ha disminuido 1 puesto en Matlab (en relación al último mes)
Gráfica de Matlab

Encontrar valores y posiciones de una matriz que se referente a otra matriz.

Publicado por Ricardo (218 intervenciones) el 01/10/2019 17:48:32
Buenos días.

Mando imagen.


Uso la versión
MATLAB R2014a


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

Encontrar valores y posiciones de una matriz que se referente a otra matriz.

Publicado por JESUS DAVID ARIZA ROYETH (1818 intervenciones) el 01/10/2019 17:44:51
quizás la versión de Matlab, intenta esto a ver si resulta:

1
2
3
4
5
6
A = [2 4 7];
B = [3 4 6
        1 5 7
        2 8 9
        9 2 4];
[~,n3]=max(repmat(A,size(B,1),1)==B)
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

Encontrar valores y posiciones de una matriz que se referente a otra matriz.

Publicado por JOSE JEREMIAS CABALLERO (5917 intervenciones) el 01/10/2019 17:50:31
1
2
3
4
5
6
7
>> clear
A = [2 4 7]
B = [3 4 6; 1 5 7;2 8 9;9 2 4]
for i=1:length(A)
p(i)=find(B(:,i)==A(i));
end
p

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
A =
 
     2     4     7
 
 
B =
 
     3     4     6
     1     5     7
     2     8     9
     9     2     4
 
 
p =
 
     3     1     2
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
sin imagen de perfil
Val: 352
Ha disminuido 1 puesto en Matlab (en relación al último mes)
Gráfica de Matlab

Encontrar valores y posiciones de una matriz que se referente a otra matriz.

Publicado por Ricardo (218 intervenciones) el 01/10/2019 17:57:55
Buenos días esto si funciona.


Con esto tengo la posición de los valores de A en la Matriz B, solo falta saber la magnitud de esos valores que son iguales.

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

Encontrar valores y posiciones de una matriz que se referente a otra matriz.

Publicado por JOSE JEREMIAS CABALLERO (5917 intervenciones) el 01/10/2019 18:04:00
1
2
3
4
5
6
7
8
9
10
11
clear
A = [2 4 7]
B = [3 4 6; 1 5 7;2 8 9;9 2 4]
for i=1:length(A)
[u,v]=find(B(:,i)==A(i));
p(i)=u;
C=B(:,i);
valor(i)=C(p(i));
end
p
valor


1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
>> buscar
A =
     2     4     7
 
 
B =
     3     4     6
     1     5     7
     2     8     9
     9     2     4
 
 
p =
     3     1     2
 
 
valor =
     2     4     7
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
sin imagen de perfil
Val: 352
Ha disminuido 1 puesto en Matlab (en relación al último mes)
Gráfica de Matlab

Encontrar valores y posiciones de una matriz que se referente a otra matriz.

Publicado por Ricardo (218 intervenciones) el 01/10/2019 18:19:50
Excelente !!!!!

Funciono.

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