请帮我找一个有效的方法(不用于循环)来获取矩阵的排名。
示例:
orig_matrix = [-1 2 nan 2 3 4 -2; 100 nan nan -100 300 1000 0]';
[matrix_sorted, id] = sort(orig_matrix ,1,'ascend');
我知道'id'是orig_matrix中matrix_sorted元素的位置。但我想得到orig_matrix中所有元素的排名,如下所示:
ranking = [2 3 7 4 5 6 1; 3 6 7 1 4 5 2]
非常感谢!
答案 0 :(得分:2)
只需添加到OmG的帖子,您还可以指定要单独排序的维度,这样您就不需要转置:
[B, Result] = sort(orig_matrix, 2);
答案 1 :(得分:1)
你可以通过使用转置的简单技巧来实现:
request.FILE