sorting a matrix according to another matrix
2 次查看(过去 30 天)
显示 更早的评论
Hi,
I have a 2x200000 matrix A where the 2nd column is an ID column.Then I have another 6x200000 matrix B in which also the first column is an ID column . The ID column of A has the same IDs as the ID column in B, however with a different order. Is it possible to sort the whole matrix B according to the column matrix of A? for example: A=[ 0.3 1;0.4 2; 0.1 3] and B=[1 6; 3 8 ;2 11]; is it possible to sort B according to the 2nd column of A (IDs) to get B=[1 6; 2 11; 3 8]; where the first column in B is also a column of the same IDs of A?
采纳的回答
Sukuchha
2012-2-24
A=[ 0.3 1;0.4 2; 0.1 3]
B=[1 6; 3 8 ;2 11]
[tf, loc] = ismember(A(:,2), B(:,1))
B_value = B(:,2);
result=[ A(:,2) B_value(loc)]
0 个评论
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Shifting and Sorting Matrices 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!