How does a matrix sort based on another matrix?
2 visualizaciones (últimos 30 días)
Mostrar comentarios más antiguos
SM
el 12 de Feb. de 2020
Comentada: JESUS DAVID ARIZA ROYETH
el 12 de Feb. de 2020
I have two matries such as
A=[2 3 1;2 1 3] and B=[0.2 0.15 0.1; 0.3 0.2 0.1]. Now I want to create a matrix which looks like C=[ 0.1 0.2 0.15; 0.2 0.3 0.1]. What actually happened here is that
B(1,1) moves to C(1,2) because of A(1,1)=2 .
B(1,2) moves to C(1,3) because of A(1,2)=3;
B(1,3) moves to C(1,1) beacause of A(1,3)=1;
B(2,1) moves to C(2,2) beacause of A(1,1)=2;
B(2,2) moves to C(2,1) beacause of A(1,2)=1;
B(2,3) moves to C(2,3) beacause of A(1,3)=3;
I used just C=B(A)..it does not make sense for me! Is there any possible solution without loop?
0 comentarios
Respuesta aceptada
JESUS DAVID ARIZA ROYETH
el 12 de Feb. de 2020
Editada: JESUS DAVID ARIZA ROYETH
el 12 de Feb. de 2020
Solution:
C=zeros(size(B));
C(sub2ind(size(B),repmat((1:size(B,1))',1,size(B,2)),A))=B
2 comentarios
Más respuestas (0)
Ver también
Categorías
Más información sobre Shifting and Sorting Matrices en Help Center y File Exchange.
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!