主要内容

topkrows.

排序订单的顶部行

描述

例子

B.= topkrows(XK.返回第一个K.阵列中的行X按降序排序(用于数字数据)或反向字母顺序(用于文本数据)。topkrows.根据第一列中的元素进行排序。当第一列包含相等值的元素时,topkrows.根据下一列中的元素进行排序,并重复此行为以进行成功等值。

例子

B.= topkrows(XK.col通过指定的列对结果进行排序col。使用此语法连续执行多个列排序。例如,topkrows(x,k,5)排序行的行X基于第五列中的元素的降序顺序。topkrows(x,k,[4 6])首先按第四列中的元素按降序排序行,然后根据第六列中的元素排序以打破连接。

例子

B.= topkrows(___方向使用以前的任何语法指定排序的方向。方向'升降'“下降”或包含这些值的单元阵列。

例如,topkrows(a,2,[2 3],{ascend''descend'})通过第2列中的元素,通过第一个排序排序排序排序等行。然后,在第3列中的元素中,它按升序排序排序排序排序排序排序列2中的第2列中的行。

例子

B.= topkrows(___,'比较地区',方法指定如何比较复杂的数字。比较方法可以是'汽车''真实的', 或者'ABS'

[B.一世] = topkrows(X___还返回索引矢量一世这描述了所选行的顺序,使其如此b = x(我,:)

例子

B.= topkrows(T.K.返回第一个K.表中的行或时间表T.,按顺序排列。表行按照它们的所有变量进行排序顺序,并且时间可行行按时间降序排序。

例子

B.= topkrows(T.K.vars.通过指定的变量对结果进行排序vars.。使用此语法随着连续的多个变量排序。例如,topkrows(t,k,{'var1','var2'})首先排序行的行T.基于元素var1然后,它由元素排序var2

B.= topkrows(T.K.vars.方向指定排序的方向。例如,使用'升降'排序T.按升序。

B.= topkrows(___,'比较地区',方法指定如何比较复杂的数字。比较方法可以是'汽车''真实的', 或者'ABS'

[B.一世] = topkrows(T.___还返回索引矢量一世这描述了所选行的顺序,使其如此b = t(我,:)

例子

全部收缩

使用不同的排序顺序对矩阵的行进行排序并查看顶部行。

在1到10之间创建一个20×5的随机整数矩阵。

RNG.默认重复性的%x = randi(10,20,5);

排序行的行X按降序顺序并返回前4行。默认,topkrows.使用矩阵的第一列进行排序。对于特定列中具有相同元素的任何行,排序基于右侧的列。

ta = topkrows(x,4)
ta =4×510 10 8 7 6 10 7 8 2 4 10 4 4 3 5 10 3 7 9 6

当调用三个输入参数时,topkrows.完全基于第三个参数中指定的列的排序。这意味着指定列中具有相等值的行仍然存在原始顺序。种类X使用第三列中的值并返回前5行的降序。

tb = topkrows(x,5,3)
TB =5×55 7 10 2 6 2 9 8 6 6 10 10 8 7 6 10 7 8 2 4 10 2 8 3 6

种类X使用第三列和第四列。在这种情况下,topkrows.按列3对行进行排序3.然后,对于第3列中具有相等值的任何行,它按列4排序。

Tc = topkrows(x,5,[3 4])
Tc =.5×55 7 10 2 6 10 10 8 7 6 2 9 8 6 6 10 2 8 3 6 10 7 8 2 4

使用具有不同排序方向的多列对矩阵进行排序。

在1到10之间创建100×5的随机整数矩阵。

RNG.默认重复性的%x = randi(10,100,5);

种类X使用前三列并返回前10行。使用单元格数组指定每个列的排序方向。

ta = topkrows(x,10,1:3,{“下降”'升降''升降'})
ta =10×510 1 4 6 7 10 1 8 5 11 10 2 3 4 7 10 3 5 10 5 10 4 7 2 4 10 5 5 2 7 10 5 5 5 6 7 10 6 5 5 7 10 6 6 1 5 10 7 7 8 1

在表中排序异构数据的行。

从中创建一个表患者数据集,包括一组患者的基本健康信息。包括患者年龄,性别,高度以及其自我评估的健康状况。制作Selfassessedhealthstatus.可变序列分类阵列。

加载耐心vals = {'较差的''公平的''好的''优秀的'};SelfassessedHealthStatus =分类(SelfassessedHealthStatus,Vals,'序号',真的);T =表(年龄,性别,高度,自主体育心);

在表格按降序排序时找到前10行。结果由第一个变量排序,年龄,降序。剩下的列使得断裂围绕:

  • 性别变量使变量倾斜以与年龄打破联系。

  • 高度变量破坏了性别的关系。

  • Selfassessedhealthstatus.变量破坏了高度的关系。

ta = topkrows(t,10)
ta =10×4表年龄的性别高度自主熟练身高___ __________ ______________________________ 50 {男性'} 72优秀50 {'男性'} 68好49 {男性'} 70博览会49 {男性'} 68穷人49 {女性'} 64好49 {'女性'} 63好48 {'男性'} 71好48 {'男性'} 71好48 {'男性'} 66博览会48 {女性'} 66优秀

通过排序,找到包含最年轻女性的前10行性别变量并俯视年龄多变的。

tb = topkrows(t,10,{'性别''年龄'},'升降'
TB =10×4表年龄的性别高度自主熟练身高________________________________________ 25 {女性'} 63好25 {女性'} 69 {女性'} 69 {'女性'} 65 Good 28 {女性'} 65 Good 28 {'女性'} 66好29 {女性'} 63优秀29 {女性'} 68优秀的29 {女性'} 64好30 {女性'} 67优秀

通过改变排序方向找到前10名最古老的女性年龄变量到“下降”

tb = topkrows(t,10,{'性别''年龄'},{'升降'“下降”})
TB =10×4表年龄性别高度自主熟练身高___ ________________________________ 49 {'女性'} 63好48 {女性'} 65优秀48 {女性'} 66优秀的48 {女性'} 64优秀的48 {'女性'} 64好48 {女性'} 66优秀47 {'女性'} 66优秀46 {女性'} 68好45 {女性'} 68优秀

通过绝对值对复数和实际部分进行排序复数矩阵。

创建一个100×2的随机复数矩阵。

valrange = [-10 10];x = randi(valrange,100,2)+ 1i * randi(valrange,100,2);

找到矩阵的前10行。默认,topkrows.通过绝对值进行比较复数。

ta = topkrows(x,10)
ta =10×2复合物-10.0000 + 9.0000  -  2.0000i -8.0000 + 9.0000i 2.0000  -  8.0000i 9.0000 + 8.0000i 4.0000 + 7.0000i -6.0000 + 10.0000i -8.0000  -  7.0000i 6.0000 -10.0000i -1.0000  -  5.0000i 6.0000 -10.0000i 0.0000+ 5.0000i -7.0000 + 9.0000i -2.0000  -  5.0000i 9.0000  -  7.0000i 10.0000 + 7.0000i 9.0000  -  7.0000i 6.0000 + 6.0000i -9.0000  -  7.0000i 9.0000 + 9.0000i

通过指定,仅使用复数的实际部分找到矩阵的前10行'比较渣'名称值对。

tb = topkrows(x,10,'比较渣''真实的'
TB =10×2复合物10.0000 + 4.0000 -3.0000-7.0000i 10.0000 + 3.0000i 4.0000 + 5.0000i 10.0000 + 2.0000i 5.0000  -  7.0000i 10.0000  -  7.0000i 10.0000  -  1.0000i -1.0000  -  8.0000i 10.0000  -  1.0000i -6.0000 + 10.0000i 10.0000  -  4.0000i -9.0000 +0.0000i 10.0000  -  5.0000i -8.0000  -  3.0000i 9.0000 + 8.0000i 4.0000 + 7.0000i 9.0000 + 5.0000i -10.0000 + 0.0000i 9.0000 + 1.0000i 1.0000  -  9.0000i

输入参数

全部收缩

输入数组,指定为数字,逻辑,字符,字符串,分类,日期时间或持续时间数组。

  • 如果X那是非正式分类阵列topkrows.根据返回的类别的顺序按降序对元素进行排序类别(x)

  • 如果X包含,或其他缺失的值,然后topkrows.将缺失值放在降序排序结束时。

数据类型:单身的|双倍的|INT8.|int16|INT32.|INT64.|uint8.|uint16|UINT32.|UINT64|逻辑|char|细绳|分类|约会时间|期间
复数支持:金宝app是的

输入表,指定为表或时间表。

数据类型:桌子|时间表

要返回的行数,指定为非负标量整数。如果K.大于行的数量X, 然后topkrows.返回所有行X

列以排序,指定为正标量整数或正整数的向量。

例子:b = topkrows(x,100,[1 3])在返回前100行之前对第一个和第三列进行排序。

变量排序,指定为此表中的选项之一。

选项 例子 描述
正整数 Topkrows(T,K,3) 整数N指定按原样排序的变量索引t.properties.variablenames {n}
正整数矢量 Topkrows(t,k,[1 3]) 矢量[n1 n2 ...]指定若干变量的索引,以按原样排序t.properties.variablenames {[n1 n2 ...]}
逻辑矢量 topkrows(t,k,[真为false]) 指定使用值排序的一个或多个变量真的或者错误的
变量名 Topkrows(t,k,'var3') 指定排序变量作为列出的变量名称t.properties.variablenames.
细胞阵列 Topkrows(t,k,{'var1'var3'}) 指定选中的几种排序变量t.properties.variablenames.
'rownames' topkrows(t,k,'rownames') 仅限桌子。此选项按行名称排序结果。

例子:b = topkrows(x,k,[1 3])排序在第一个和第三列上。

例子:b = topkrows(x,k,'年')使用它的排序多变的。

排序方向,指定为“下降”'升降'或者指定这些值的某些组合的单元格数组。

如果方向是一个单元格数组,那么它必须包含“下降”或者'升降'对于指定的每个排序列col或者vars.。如果您未指定col或者vars.,然后单元阵列必须包含“下降”或者'升降'每个列X或可变的T.

复杂数字的比较方法,指定为其中一个值:

  • '汽车'- (默认)根据备份比较实数'真实的'和复杂的数字'ABS'

  • '真实的'- 将数字与真实部分进行比较真实(a)。具有相同实际部分的数字由虚部偏离imag(a)

  • 'ABS'- 通过绝对值进行比较数字ABS(a)。相同幅度的数字由相位角调角度(a)

此选项不支持非数字输入数据(金宝app约会时间期间细绳, 等等)。

输出参数

全部收缩

请求的行,作为同一类的数组返回X或者T.

行指数,作为向量返回。一世描述所选行的顺序,使其如此b = x(我,:)或者b = t(我,:)

尖端

  • topkrows.不做一个完整的输入数据,所以它通常比它更快种类排队当请求行的数量很小时。

兼容性考虑因素

展开全部

R2017B的行为更改

扩展能力

也可以看看

|||||

介绍在R2016B.