文档帮助中心
最上面的行按已排序的顺序排列
B = topkrows (X, k)
B = topkrows (X, k,上校)
B = topkrows (___、方向)
B = topkrows (___、“ComparisonMethod”方法)
[B,我]= topkrows (X,___)
B = topkrows (T, k)
B = topkrows (T, k, var)
B = topkrows (T, k, var,方向)
[B,我]= topkrows (T)___)
例子
B= topkrows (X,k)返回第一个k行数组X按降序(用于数字数据)或反字母顺序(用于文本数据)排序。topkrows根据第一列中的元素进行排序。当第一列包含相等值的元素时,topkrows根据下一列中的元素进行排序,并对后面的相等值重复此行为。
B= topkrows (X,k)
B
X
k
topkrows
B= topkrows (X,k,上校)按指定的列对结果进行排序上校.使用此语法可连续执行多个列排序。例如,topkrows (X, k, 5)对行进行排序X根据第五列中的元素降序排列。topkrows (X, k, [4 - 6])首先根据第4列中的元素按降序对行进行排序,然后根据第6列中的元素进行排序,以打破联系。
B= topkrows (X,k,上校)
上校
topkrows (X, k, 5)
topkrows (X, k, [4 - 6])
B= topkrows (___,方向)使用前面任何一种语法指定排序方向。方向可以“提升”,“下”,或包含这些值的单元格数组。
B= topkrows (___,方向)
方向
“提升”
“下”
例如,topkrows(2 2 3,{“提升”“下降”})首先根据第2列中的元素对行按升序排序,获取最上面的2行。然后,它根据列3中的元素按降序对列2中条目相等的行进行排序。
topkrows(2 2 3,{“提升”“下降”})
B= topkrows (___“ComparisonMethod”,方法)指定如何比较复数。比较法可以“汽车”,“真实”的,或“abs”.
B= topkrows (___“ComparisonMethod”,方法)
方法
“汽车”
“真实”的
“abs”
[B,我) = topkrows (X,___)也返回一个索引向量我描述所选行顺序的B = X(我,:).
[B,我) = topkrows (X,___)
我
B = X(我,:)
B= topkrows (T,k)返回第一个k表或时间表中的行T,按顺序排列。表行按其所有变量降序排列,而时间表行按时间降序排列。
B= topkrows (T,k)
T
B= topkrows (T,k,var)按指定的变量对结果进行排序var.使用此语法可以连续对多个变量进行排序。例如,topkrows (T, k,{‘Var1’,‘Var2})首先对行的排序T以元素为基础Var1,然后按元素进行排序Var2.
B= topkrows (T,k,var)
var
topkrows (T, k,{‘Var1’,‘Var2})
Var1
Var2
B= topkrows (T,k,var,方向)指定排序的方向。例如,使用“提升”进行排序T以升序排序。
B= topkrows (T,k,var,方向)
[B,我) = topkrows (T,___)也返回一个索引向量我描述所选行顺序的B = T(我,:).
[B,我) = topkrows (T,___)
B = T(我,:)
全部折叠
使用不同的排序顺序对矩阵的行进行排序,并查看顶部的行。
创建一个由1到10之间的随机整数组成的20 × 5矩阵。
rng默认的%的再现性X =兰迪(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行。
结核病= topkrows (X、5、3)
结核病=5×55 7 10 2 6 2 9 8 6 6 6 10 10 8 7 6 7 8 2 4 10 2 8 3 6
排序X同时使用第三和第四列。在这种情况下,topkrows按第3列对行进行排序。然后,对于第3列中具有相等值的任何行,它将按第4列进行排序。
TC = topkrows(X,5,[3])
TC =5×55 7 10 2 6 10 10 8 7 6 2 9 8 6 6 6 10 2 8 3 6 10 7 8 2 4
使用不同排序方向的几个列对矩阵进行排序。
创建一个由1到10之间的随机整数组成的100 × 5矩阵。
rng默认的%的再现性X =兰迪(10100 5);
排序X使用前三列并返回前10行。使用单元格数组为每个列指定排序方向。
TA = topkrows (X 10 1:3, {“下”,“提升”,“提升”})
TA =10×51 . 1 1 4 6 7 1 8 5 1 10 2 3 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 4 5 5 5 5 6 6 7 6 6 1 5 10 7 7 8 1
对表中的异构数据行进行排序。
创建一个表patients.mat数据集,其中包括一组患者的基本健康信息。表中包括患者的年龄、性别、身高和自我评估的健康状况。使SelfAssessedHealthStatus变量为顺序类别数组。
patients.mat
SelfAssessedHealthStatus
负载病人瓦尔斯= {“可怜的”,“公平”,‘好’,“优秀”};SelfAssessedHealthStatus =分类(SelfAssessedHealthStatus,瓦尔斯,“顺序”,真正的);T =表(年龄、性别、身高、SelfAssessedHealthStatus);
当表按降序排序时,查找前10行。结果按第一个变量排序,年龄,按降序排列。其余的列被分类以打破联系:
年龄
的性别变量被分类以打破与年龄的联系。
性别
的高度变量打破了与性别的联系。
高度
的SelfAssessedHealthStatus变量断裂与高度有关。
TA = topkrows (T, 10)
TA =10×4表年龄性别身高SelfAssessedHealthStatus ___ __________ ______ ________________________ {‘男性’}72优秀50{‘男性’}68架好49{‘男性’}70 49{‘男性’}68贫穷49{‘女性’}64好49{‘女性’}63 48{‘男性’}71好48{‘男性’}71 48{‘男性’}66公平48{‘女性’}66好
通过排序找到包含最年轻女性的前10行性别变量上的子排序年龄变量。
结核病= topkrows (T 10 {“性别”,“年龄”},“提升”)
结核病=10×4表年龄性别身高SelfAssessedHealthStatus ___ __________ ______ ________________________ 25{‘女性’}63好25{‘女性’}64 69年优秀27日{‘女性’}65年公平28日{‘女性’}65年好28日{‘女性’}好66年{‘女性’}28日29日{‘女性’}63年68年优秀29日{‘女性’}64年优秀29日{‘女性’}{‘女性’}67优秀的好
通过改变排序方向来找到年龄最大的10位女性年龄变量来“下”.
结核病= topkrows (T 10 {“性别”,“年龄”}, {“提升”,“下”})
结核病=10×4表年龄性别身高SelfAssessedHealthStatus ___ __________ ______ ________________________ 49{‘女性’}64好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 10.0000 - 2.0000 -8.0000 + 9.0000我2.0000 - 8.0000 9.0000 -6.0000我4.0000 + 7.0000 + 8.0000 + 10.0000我-8.0000 - 7.0000 6.0000 - -10.0000 -1.0000 - 5.0000 6.0000 - -10.0000我0.0000 + 5.0000我-7.0000 + 9.0000 -2.0000 - 5.0000 9.0000 - 7.0000我10.0000 + 7.0000 9.0000 - 7.0000 6.0000 -9.0000 - 7.0000 + 6.0000我9.0000 + 9.0000
只使用复数的实部来查找矩阵的前10行“ComparisonMethod”名称-值对。
“ComparisonMethod”
结核病= topkrows (X 10“ComparisonMethod”,“真实”的)
结核病=10×2复杂我10.0000 + 4.0000 -3.0000 - 7.0000 10.0000 10.0000我4.0000 + 5.0000 + 3.0000 + 2.0000我5.0000 - 7.0000 10.0000 - 1.0000 -1.0000 - 8.0000 10.0000 - 1.0000我-6.0000 + 10.0000 10.0000 - 4.0000我-9.0000 + 0.0000 10.0000 - 5.0000 -8.0000 - 3.0000我4.0000 + 9.0000 + 8.0000 7.0000 -10.0000我9.0000 + 5.0000 + 0.0000我1.0000 - 9.0000 + 1.00009.0000我
输入数组,指定为数字、逻辑、字符、字符串、分类、日期时间或持续时间数组。
如果X是一个非序数分类数组,那么topkrows根据返回的类别的顺序按降序对元素进行排序类别(X).
类别(X)
如果X包含南,NaT,或其他缺失的值,则topkrows将缺失的值放在降序排序的末尾。
南
NaT
数据类型:单|双|int8|int16|int32|int64|uint8|uint16|uint32|uint64|逻辑|字符|字符串|分类|datetime|持续时间复数的支持:万博1manbetx是的
单
双
int8
int16
int32
int64
uint8
uint16
uint32
uint64
逻辑
字符
字符串
分类
datetime
持续时间
输入表,指定为表或时间表。
数据类型:表格|时间表
表格
时间表
要返回的行数,指定为非负标量整数。如果k是否大于行数X,然后topkrows返回输入的所有行X.
用于排序的列,指定为正标量整数或正整数的向量。
例子:B = topkrows(X,100,[1])对第一列和第三列进行排序,然后返回前100行。
B = topkrows(X,100,[1])
“RowNames”
要排序的变量,作为该表中的选项之一指定。
topkrows (T, k, 3)
n
T.Properties.VariableNames {n}
topkrows (T, k, 3 [1])
(n1 n2……)
T.Properties.VariableNames{[n1 n2 …]}
topkrows (k, T[真假真])
真正的
假
topkrows (T, k, Var3)
T.Properties.VariableNames
topkrows (T, k, {' Var1 ' Var3 '})
topkrows (T, k, RowNames)
例子:B = topkrows(X,k,[1])对第一列和第三列进行排序。
B = topkrows(X,k,[1])
例子:B = topkrows (X, k,‘年’)类使用一年变量。
B = topkrows (X, k,‘年’)
一年
排序方向,指定为“下”,“提升”,或指定这些值的某种组合的单元格数组。
如果方向是单元格数组,那么它必须包含“下”或“提升”指定的每个排序列上校或var.如果不指定上校或var,则单元格数组必须包含“下”或“提升”中的每一列X或变量T.
复数的比较方法,指定为以下值之一:
“汽车”- (default)根据“真实”的复数根据“abs”.
“真实”的-比较数字的实部真正的(一个).实部相等的数按虚部分类图像放大(A).
真正的(一个)
图像放大(A)
“abs”—按绝对值比较数字abs ().大小相等的数按相位角进行分类角(A).
abs ()
角(A)
此选项不支持非数字输入数据(万博1manbetxdatetime,持续时间,字符串等等)。
所请求的行,作为类相同的数组返回X或T.
行索引,作为一个向量返回。我描述所选行的顺序,以便B = X(我,:)或B = T(我,:).
topkrows不做完整的输入数据排序,所以一般比排序和sortrows当请求的行数很少时。
排序
sortrows
全部展开
R2017b中行为改变
的一些行为topkrows在高数组上的操作已经改变了:
topkrows的地方南,NaT,以及其他在降序排序末尾缺失的值。在以前的版本topkrows在降序排序的开始位置放置缺失的值。
topkrows不再接受只包含标量数值的高单元格数组作为输入。使用cell2mat在使用之前将标量数值的高单元格数组转换为高矩阵topkrows.
cell2mat
用法说明和限制:
的“ComparisonMethod”不支持名称-值对。万博1manbetx
的“RowNames”不支持表的选项。万博1manbetx
有关更多信息,请参见高大的数组.
单元格数组、表和类型数组分类,持续时间,或datetime不支持第一个输入万博1manbetx参数X.
的值用于固定大小的编译k必须是常数。
此函数完全支持分布式数组。万博1manbetx有关更多信息,请参见使用分布式阵列运行MATLAB函数(并行计算工具箱).
头|maxk|貂|排序|sortrows|尾巴
头
maxk
貂
尾巴
您的系统中存在此示例的修改版本。是否要打开此版本?
您点击了一个对应于这个MATLAB命令的链接:
通过在MATLAB命令窗口中输入该命令来运行该命令。Web浏览器不支持MATLAB命令。万博1manbetx
选择一个网站来获得可用的翻译内容,并看到当地的活动和提供。根据您所在的位置,我们建议您选择:.
你也可以从以下列表中选择一个网站:
请选择表现最佳的中国网站(中文或英文)。MathWorks的其他国家网站并没有针对您所在位置的访问进行优化。
与当地办事处联系