Issues using index to rank rows of a matrix
조회 수: 1 (최근 30일)
이전 댓글 표시
Hello,
I have the following simple array:
data = [5.35;4.99;4.77;5.13;3.84];
I am trying to use the sort or sortrows function to provide an index or ranking of the rows, such that row 1 would be assigned a '1', row 2 a '3', row 3 a '4', row 4 a '2', and row 5 a '5'.
I am using the following code:
[~,index] = sortrows(data,'descend');
This returns the following ranking, which is incorrect: 1, 4, 2, 3, 5
Is there a solution to get the index output to return the ranking I am seeking?
Thanks,
John
댓글 수: 2
dpb
2020년 5월 6일
Well, what's the logic behind assigning those indices? They're not based on sorting the input array by value, either ascending nor descending, but some other seemingly more-or-less arbitrary rule.
Can only code what can define first...
Star Strider
2020년 5월 6일
What criteria are you using to get that ranking? Perhaps I’m missing something, however I don’t see any underlying pattern that would suggest the ranking you want.
채택된 답변
John Harry
2020년 5월 6일
댓글 수: 4
Star Strider
2020년 5월 6일
That might have helped to respond to the original problem.
Since it’s solved now, it is of historical interest only.
추가 답변 (0개)
참고 항목
카테고리
Help Center 및 File Exchange에서 Matrices and Arrays에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!