主要内容

排队

排序矩阵或表

描述

例子

B= sortrows(一个根据第一列中的元素按升序对矩阵的行排序。当第一列包含重复的元素时,排队根据下一列中的值进行排序,并对后续相等的值重复此行为。

例子

B= sortrows(一个排序一个基于矢量中指定的列.例如,排名(a,4)排序行的行一个根据第四列中的元素按升序排列。sortrows ([4 - 6])首先对行的排序一个基于第四列中的元素,然后基于第六列中的元素来打破连接。

例子

B= sortrows(___方向排序行的行一个按照指定的顺序方向对于前面的任何语法。方向可以'升降'(默认)升序或“下降”用于降序。方向也可以是一个单元数组,其元素是'升降'“下降”,每个元素对应于列的列排队在操作。例如,Sortrows(A,[4 6],{Ascend''descend'})排序行的行一个根据第四列升序,然后根据第六列降序,打破关系。

例子

B= sortrows(___名称,值指定用于排序行的其他参数。例如,排名(a,'comparisonmethod','abs')对元素进行排序一个的大小。

例子

B索引) = sortrows (___还返回一个描述行的重新排列的索引矢量b = a(索引,:)

例子

tblB= sortrows(tblA根据第一个变量中的值按升序排序表的行。如果重复第一个变量中的元素,那么排队由第二变量中的元素排序,等等。

如果tblA是一个时间表,然后排队排序行的行tblA按行时间升序排列。时间表的行时间标记时间表第一个维度的行。

例子

tblB= sortrows(tblA, ' RowNames ')根据行名对表进行排序。表的行名标记了表第一个维度的行。如果tblA没有行名称,即如果tbla.properties.rownames.是空的,然后排队返回tblA

不支持此语法何时不受支持金宝apptblA是一个时间表。

例子

tblB= sortrows(tblArowdimname.排序tblA由行标签rowdimname.沿着第一个维度。

  • 如果tblA是一个表,那么行标签就是行名。

  • 如果tblA是一个时间表,那么行标签是行时间。

例子

tblB= sortrows(tblAvars.通过指定的变量中的元素对表进行排序vars..例如,Sortrows(TBLA,{'var1','var2'})首先对行的排序tblA基于元素var1,然后由元素var2

  • 如果tblA是一个表,它有行名字,然后vars.可以包括行名。

  • 如果tblA是一个时间表,然后vars.可以包括行时间。

例子

tblB= sortrows(___方向排序tblA按照指定的顺序方向对于前面的任何表语法。方向可以'升降'或者“下降”,它应用于所有指定的变量、行名或行乘以它排队在操作。方向也可以是一个单元数组,其元素是'升降'“下降”,其中每个元素对应于指定的变量、行名或被排序的行次数。

例子

tblB= sortrows(___名称,值指定用于对表或时间表排序的其他参数。例如,Sortrows(TBLA,'Var1','Sifordplacement','First')基于中的元素进行排序var1,订购缺失的元素,如在桌子的开头。

例子

tblB索引) = sortrows (___还返回索引矢量,这样: tblB = tblA(指数)

例子

崩溃

创建矩阵并根据第一列中的元素按升序排序其行。当第一列包含重复的元素时,排队查看第二列中的元素以打破僵局。对于第二列中的重复元素,排队展望第三列,等等。

RNG.默认;a =楼层(兰特([6 7])* 100);a(1:4,1)= 95;a(5:6,1)= 76;a(2:4,2)= 7;a(3,3)= 48
一个=6×795 27 95 79 67 70 69 95 7 48 95 75 3 31 95 7 48 65 74 27 95 95 7 14 3 39 4 3 76 15 42 84 65 9 43 76 97 91 93 17 82 38
B = sortrows (A)
B =6×776 15 42 84 65 9 43 76 97 91 93 17 82 38 95 7 14 3 39 43 95 7 48 65 74 27 95 95 7 48 95 75 3 31 95 27 95 79 67 70 69

排序行的行一个基于第二列中的值。当指定的列有重复的元素时,相应的行保持它们原来的顺序。

c = sortrows(a,2)
C =6×795 7 48 95 75 3 31 95 7 48 65 74 27 95 95 7 14 3 9 4 3 76 15 42 84 65 9 43 95 27 95 79 67 70 69 76 97 91 93 70 69 76 97 91 93 70 69 76 97 91 93 17 82 38

排序行的行一个根据第一列中的元素,并查看第七列以打破任何联系。

d = sortrows(a,[1 7])
d =6×776 97 76 15 42 84 65 94 44 48 75 3 31 9 43 95 7 14 3 3 3 31 95 7 48 95 75 3 31 95 27 95 79 67 70 69 95 7 48 65 74 79 95 7 48 65 74 27 95

排序行的行一个基于第四列中的元素的降序,显示输出向量索引看看这些行是如何重新排列的。

[e,index] = sortrows(a,4,“下降”
E =6×795 7 48 95 75 3 31 76 97 91 93 17 82 38 76 15 42 84 65 9 43 95 27 95 79 67 70 69 95 7 48 65 74 70 69 95 7 48 65 74 27 95 95 7 14 3 39 4 3
索引=6×12 6 5 1 3 4

创建包含复数的矩阵,并根据第一列中的元素按升序对矩阵的行排序。既然大幅度(1)a(3,1)等于,排队计算他们的角度来打破僵局。

a = [1 + 2i 3 + i i;2 + 10i 6i 2 + 5i;2 + i 4 3 + 3i]
一个=3×3复合物1.0000 + 2.0000i 3.0000 + 1.0000i 0.0000 + 1.0000i 2.0000 + 10.0000i 0.0000 + 6.0000i 2.0000 + 5.0000i 2.0000 + 1.0000i 4.0000 + 0.0000i 3.0000 + 3.0000i
B = sortrows (A)
B =3×3复合物2.0000 + 1.0000i 4.0000 + 0.0000i 3.0000 + 3.0000i 1.0000 + 2.0000i 3.0000 + 1.0000i 0.0000 + 1.0000i 2.0000 + 10.0000i 0.0000 + 6.0000i 2.0000 + 5.0000
角度(a(1,1))
ANS = 1.1071.
角度(a(3,1))
ans = 0.4636.

使用“真实”选择排序行的选项一个通过他们的真实部分。自从A(2,1)a(3,1)有相同的真实部位,排队用虚部打破僵局。

C = sortrows (,'比较渣'“真实”
C =3×3复合物1.0000 + 2.0000i 3.0000 + 1.0000i 0.0000 + 1.0000i 2.0000 + 1.0000i 4.0000 + 0.0000i 3.0000 + 3.0000i 2.0000 + 10.0000i 0.0000 + 6.0000i 2.0000 + 5.0000i
imag(a(2,1))
ans = 10.
图像放大((3,1))
ans = 1

创建一个6×2的字符向量阵列,并排序其行。结果是由两个国家和名称排序的字母化列表。

a = {'德国''卢卡斯''美国'“威廉”'美国''安德鲁'......'德国''andreas''美国''奥利维亚''德国''朱莉娅'
一个=6x2细胞{'德国'} {'lukas'} {'veriam'} {'william'} {'veriam'} {'andrew'} {'andrew'} {'德国'} {'andreas'} {'美国'} {'美国'} {'olivia'}{'德国'} {'Julia'}
B = sortrows (A)
B =6x2细胞{'德国'} {'andreas'} {'德国'} {'julia'} {'德国'} {'lukas'} {'美国'} {'美国'} {'Andrew'} {'Andrew'} {'美国'} {'美国'} {'美国'} {'Olivia'}{'美国'} {'William'}

先对国家排序,然后按降序对名字排序。

c = sortrows(a,[1 2],{'升降'“下降”})
C =6x2细胞{'德国'} {'lukas'} {'德国'} {'julia'} {'德国'} {'andreas'} {'andreas'} {'&vers'} {'威廉'} {'美国'} {'美国'} {'olivia'}{'美国'} {'安德鲁'}

按变量对表的行排序。

创建一个包含4个变量的表,列出5个人的患者信息。

lastname = {'史密斯'“约翰逊”'威廉姆斯'“琼斯”'棕色'};年龄= [38; 43; 38; 40; 49];高度= [71; 69; 64; 67; 64];重量= [176; 163; 131; 133; 119];血压= [124 93;109 77;125 83;117 75;122 80];TBLA =表(年龄,身高,体重,血压,'rownames'、LastName)
TBLA =.5×4表年龄高度重量血压___ ______ ______ _____________史密斯38 71 176 124 93 johnson 43 69 163 109 77威廉姆斯38 64 131 125 83 jones 40 67 133 117 75棕色49 64 119 122 80

对表的行排序。当排队函数首先按变量按升序排序行年龄,然后由变量高度打破两排之间的领带,平等的年龄。

tblb = sortrows(tbla)
tblb =5×4表年龄高度重量血压___ ______ ______ _____________威廉姆斯38 64 131 125 83史密斯38 71 176 124 93 jones 40 67 133 117 75 johnson 43 69 163 109 77棕色49 64 119 122 80

创建一个包含4个变量的表,列出5个人的患者信息。

lastname = {'史密斯'“约翰逊”'威廉姆斯'“琼斯”'棕色'};年龄= [38; 43; 38; 40; 49];高度= [71; 69; 64; 67; 64];重量= [176; 163; 131; 133; 119];血压= [124 93;109 77;125 83;117 75;122 80];TBLA =表(年龄,身高,体重,血压,'rownames'、LastName)
TBLA =.5×4表年龄高度重量血压___ ______ ______ _____________史密斯38 71 176 124 93 johnson 43 69 163 109 77威廉姆斯38 64 131 125 83 jones 40 67 133 117 75棕色49 64 119 122 80

根据行名称按升序对表的行按升序排序,并返回描述如何重新排列行的索引向量。

[tblb,index] = sortrows(tbla,'rownames'
tblb =5×4表年龄身高体重血压_________ ______ _____________ Brown 49 64 119 122 80 Johnson 43 69 163 109 77 Jones 40 67 133 117 75 Smith 38 71 176 124 93 Williams 38 64 131 125 83
索引=5×15 2 4 1 3

创建一个包含4个变量的表,列出5个人的患者信息。

lastname = {“甜蜜”'雅各布森'“王”“工匠”'伯杰'};年龄= [38; 43; 38; 40; 49];高度= [71; 69; 64; 67; 64];重量= [176; 163; 131; 133; 119];血压= [124 93;109 77;125 83;117 75;122 80];TBLA =表(年龄,身高,体重,血压,'rownames'、LastName)
TBLA =.5×4表年龄高度重量血压___ ______ ______ _____________甜蜜38 71 176 124 93 jacobson 43 69 163 109 77王38 64 131 125 83伯杰49 64 119 122 80

按升序对表的行按升序排序高度,然后按下降顺序重量

tblb = sortrows(tbla,{'高度''重量'},{'升降'“下降”})
tblb =5×4表年龄高度重量血压___ ______ ______ ______________王38 64 131 125 83伯杰49 64 119 122 80加热器40 67 133 117 75雅各逊43 69 163 109 77 SWEEL 38 71 176 124 93

创建一个包含4个变量的表,列出5个人的患者信息。当重量变量包含丢失的值。

lastname = {“甜蜜”'雅各布森'“王”“工匠”'伯杰'};年龄= [38; 43; 38; 40; 49];高度= [71; 69; 64; 67; 64];重量= [176; nan; 131; 133; nan];血压= [124 93;109 77;125 83;117 75;122 80];TBLA =表(年龄,身高,体重,血压,'rownames'、LastName)
TBLA =.5×4表年龄身高体重血压_________ ______ _____________ Sweet 38 71 176 124 93 Jacobson 43 69 NaN 109 77 Wang 38 64 131 125 83 Joiner 40 67 133 117 75 Berger 49 64 NaN 122 80

按升序对表的行按升序排序重量,放置包含首先。

tblb = sortrows(tbla,'重量''遗漏''第一'
tblb =5×4表年龄高度重量血压___ ___________________________雅各逊43 69 NAN 109 77伯格49 64 34131 125 83 Joiner 40 67 133 117 75 SWEEL 38 71 176 124 93

创建时间表,然后按行时间对行进行排序。

定期= [小时(3)小时(2)小时(1)小时(5)小时(6)]';tt =时间表(定时,[98; 97.5; 97.9; 98.1; 101],[120; 111; 119; 117; 118]);b = sortrows(tt,'定时'
B =5×2时间表TimeDuration VAR1 VAR2 ____________ ____ ____ ____ 1 HR 97.9 119 2 HR 97.5 111 3 HR 98 120 5 HR 98.1 117 6 HR 101 118

输入参数

崩溃

输入数组,指定为列向量或矩阵。

数据类型:双人间|单身|INT8.|int16|INT32.|INT64.|uint8.|uint16|UINT32|UINT64|逻辑|char||细胞|分类|DateTime.|持续时间
复数的支持:金宝app是的

列排序向量,指定为非零整数标量或非零整数的向量。每个指定的整数值都指示要排序的列。负整数表明排序顺序是下降。

排序方向,指定为字符向量或单元格数组所包含的字符向量'升降'(默认)或“下降”.如果方向是字符向量的单元格数组,然后条目的数量必须与正在排序的列数或变量匹配。

如果是论证和争论方向参数一起指定排队根据这一点排序方向,忽略其中元素的符号

数据类型:char|细胞

输入表,指定为表或时间表。每个变量在tblA必须是有效的输入sort或者排队

数据类型:表格|时间表

输入表或时间表的第一维的名称,指定为字符向量。

  • 如果tblA然后是一个表名字的表,然后rowdimname.是表的第一维的名称。默认情况下,第一个维度的名称是“行”.维度名称是表的属性。您可以访问维度名称tblA使用tblA.Properties.DimensionNames

  • 如果tblA是一个时间表,然后rowdimname.是行时间矢量的名称。创建时间表时,您可以指定其名称,例如时间或者日约会.您还可以使用tblA.Properties.DimensionNames

示例:如果是表T有行名称,您使用了第一个维度的名称T.Properties。DimensionName{1} = '名称',然后排名(t,'name')按行名称对表进行排序。

示例:如果一个时间表TT.有一个名为的时间矢量日约会,然后Sortrows(TT,'日期')对日期和时间进行排序日约会包含。

数据类型:char

排序变量指定为标量整数,整数矢量,变量名称,变量名称的单元格数组或逻辑向量。vars.表格变量排序。

如果一个元素vars.是正整数吗排队对相应的变量进行排序tblA按升序。如果一个元素vars.是一个负整数,然后排队对相应的变量进行排序tblA按降序。

示例:Sortrows(TBLA,{'高度','重量'})排序行的行tblA按升序排列,首先是变量高度,然后是变量重量打破关系。

示例:Sortrows(TBLA,[1 4])由第一变量排序tblA按升序排序,然后排序第四变量以打破联系。

示例:sortrows(tt,{'time','x'})排序时间表的行时间TT.以升序首先,然后按表变量排序'x'打破关系。

数据类型:双人间|单身|char|细胞|逻辑

名称值对参数

指定可选的逗号分隔的对名称,值论点。名称参数名和价值是相应的价值。名称必须出现在引号内。您可以以任何顺序指定多个名称和值对参数name1,value1,...,namen,valuen

示例:sortrows(“MissingPlacement”,“最后”)

放置缺失值(NaT<未定义>,和失踪)指定为逗号分隔的对,由'遗漏'以及以下其中之一:

  • “汽车”- 缺少的元素持续上升顺序,并首先进行降序。

  • '第一'- 首先放置缺少的元素。

  • “最后一次”- 缺少的元素持续下来。

元素比较方法,指定为逗号分隔的对,由'比较渣'以及以下其中之一:

  • “汽车”- 排序行一个通过真实(a)什么时候一个是实数,排序呢ABS(a)什么时候一个是复杂的。

  • “真实”- 排序行一个通过真实(a)什么时候一个是真实的或复杂的。如果是一列一个有具有相同实际部分的元素,然后使用图像放大(A)打破关系。

  • “abs”- 排序行一个通过ABS(a)什么时候一个是真实的或复杂的。如果是一列一个具有相同幅度的元素,然后使用角度(a)在间隔(-π,π]中断圆圈。

输出参数

崩溃

排序阵列,返回为向量,矩阵或多维数组。B与尺寸相同一个

数据类型:双人间|单身|INT8.|int16|INT32.|INT64.|uint8.|uint16|UINT32|UINT64|逻辑|char||细胞|分类|DateTime.|持续时间

已排序的表,作为具有相同变量的表或时间表返回tblA

数据类型:表格|时间表

排序索引,作为索引向量返回。排序索引描述了输入中的行的重新排列b = a(索引,:)

数据类型:双人间

扩展能力

另请参阅

|||

在R2006A之前介绍