How can I use the returned sort index from the sort() function on a multidimensional array?
3 次查看(过去 30 天)
显示 更早的评论
According to the documentation:
[B,I] = sort(___) also returns a collection of index vectors for any of the previous syntaxes. I is the same size as A and describes the arrangement of the elements of A into B along the sorted dimension. For example, if A is a vector, then B = A(I).
However, if A is not a vector, then B ~= A(I) since the sort index is returned as a collection of index vectors oriented along the same dimension that sort operates on rather than a linear index.
Is there a function to convert such a sort index into a linear index array, say f(I), such that B = A(f(I)), where f(x) would be similar in theory to sub2index() with the other dimensions inferred from the size of the sort index?
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!