matlab中如何得到一组数中各个数排在第几位?比如一组数:8,2,10,6,3,5.如何得到它们从大到小的排名为:2,6,1,3,5,4.

来源:学生作业帮助网 编辑:作业帮 时间:2024/05/02 07:48:42
matlab中如何得到一组数中各个数排在第几位?比如一组数:8,2,10,6,3,5.如何得到它们从大到小的排名为:2,6,1,3,5,4.

matlab中如何得到一组数中各个数排在第几位?比如一组数:8,2,10,6,3,5.如何得到它们从大到小的排名为:2,6,1,3,5,4.
matlab中如何得到一组数中各个数排在第几位?
比如一组数:8,2,10,6,3,5.
如何得到它们从大到小的排名为:2,6,1,3,5,4.

matlab中如何得到一组数中各个数排在第几位?比如一组数:8,2,10,6,3,5.如何得到它们从大到小的排名为:2,6,1,3,5,4.

楼上太搞了吧?rank是用来求矩阵秩的,和排序没有半毛钱的关系.

 

参考代码

>> A=[8 2 10 6 3 5];
>> [B,I]=sort(-A);
>> [C,I]=sort(I); I
I =
     2     6     1     3     5     4

 

说明

1、第一处调用sort也可以写成:

[B,I]=sort(A,'descend');

因早期版本的MATLAB没有按降序排列的选项,为提高通用性,上面给的代码未使用'descend'选项.

 

2、如果不希望产生额外的无用变量B和C,可以把B和C用I代替,即写成:

>> A=[8 2 10 6 3 5];
>> [I,I]=sort(-A);
>> [I,I]=sort(I); I
I =
     2     6     1     3     5     4

在调用函数时,如果输出参数表中有重复的变量,则该变量会保留最后面那个位置的输出值.如果版本足够新(好像要2011a之后?不确定,懒得查了),也可以把要忽略的参数以波浪线(tilde,~)代替.

matlab中如何得到一组数中各个数排在第几位?比如一组数:8,2,10,6,3,5.如何得到它们从大到小的排名为:2,6,1,3,5,4. 在matlab中如何从一组数中得到随机数组成一个n*n的矩阵从1,2,3,4,5,6,7,8,9,以及他们的倒数总共17个数中取随机数,组成矩阵 Matlab如何从数组矩阵中取出一组符合要求的数 matlab矩阵中各个元素维数不同怎么表示 一组数据中,排在中间的数是中位数对吗? 在excel中,如何求一组数中大于某数的平均数 MATLAB中如何将一组数从大到小排列,并将最大的一个赋为指定值 matlab 一组数(有正有负)中寻找最接近0 的数 在Excel中如何计算一组数据中后10%的数的平均值? matlab 如何筛选一组数中重复的数最好能显示出这些数字的位置以及重复的次数 matlab中如何使用标志数和符号变量 matLAB如何表示二维数组中得一列数? matlab中如何提取一个6*6矩阵中大小排前十位的十个数,并能知道他们所在的位置,或者是让排在十位以后的数都变为0,前十位数不变也行. 在MATLAB中如何取一个服从(a,b)上的均匀分布的数 我有一组二进制16位有符号数存在 .dat 文件中,如何用MATLAB对这些数绘图. 在同一组数中可以有多个众数吗 在一组数据中,排在中间的数就是这组数据的中位数.对不对?快(有解释好的多加分) 如何用matlab在1到300中随机选出250个不重复的数,并得到剩下的数