文件帮助中心文件
数组中的唯一值
C =独特(A)
c =唯一(a,setOrder)
C =独特(发生)
C =独特(,___, '行')
C =独特(A,“行”,___)
[C ia ic] =独特(___)
[C ia ic] =独特(A,“遗产”)
[c,ia,ic] =唯一(a,'行','遗留')
[C ia ic] =独特(发生,“遗产”)
[c,ia,ic] =唯一(a,'行',发生,'遗留')
例子
C=独特(一种)返回与相同的数据一种,但没有重复。C是有序的。
C=独特(一种)
C
一种
如果一种那么,是桌子还是时刻表独特的返回唯一的行一种在排序顺序。的航班时刻表,独特的在确定行是否唯一时,考虑行时间和行值,并对输出时间表进行排序C按行时间。
独特的
如果一种是一个类别数组,则排序顺序由类别的顺序决定。
C=独特(一种那setOrder)的唯一值一种以特定的顺序。setOrder可“排序”(默认)或'稳定的'.
C=独特(一种那setOrder)
setOrder
“排序”
'稳定的'
C=独特(一种那发生)指定在重复值的情况下返回哪些索引。发生可'第一的'(默认)或'最后的'.
C=独特(一种那发生)
发生
'第一的'
'最后的'
C=独特(一种那___那'行')和C=独特(一种那'行'那___)处理每一行一种作为一个实体并返回唯一行一种在排序顺序。您必须指定一种并且可以选择指定setOrder或发生.
C=独特(一种那___那'行')
'行'
C=独特(一种那'行'那___)
这'行'选项不支持单元格数组。万博1manbetx
[C那IA.那我知道了) =独特(___)也返回索引向量IA.和我知道了使用任何前面的语法。
[C那IA.那我知道了) =独特(___)
IA.
我知道了
如果一种是一个矢量,然后C = (ia)和一个= C(集成电路).
C = (ia)
一个= C(集成电路)
如果一种是矩阵还是数组C = (ia)和A(:) = C(IC).
A(:) = C(IC)
如果是'行'选项,则: C = (ia)和: = C(集成电路).
: C = (ia)
: = C(集成电路)
如果一种那么,是桌子还是时刻表呢: C = (ia)和: = C(集成电路).
[C那IA.那我知道了) =独特(一种“遗产”)那[C那IA.那我知道了) =独特(一种、“行”、“遗产”)那[C那IA.那我知道了) =独特(一种那发生“遗产”),[C那IA.那我知道了) =独特(一种“行”,发生“遗产”)保留行为独特的来自R2012B和先前版本的功能。
[C那IA.那我知道了) =独特(一种“遗产”)
[C那IA.那我知道了) =独特(一种、“行”、“遗产”)
[C那IA.那我知道了) =独特(一种那发生“遗产”)
[C那IA.那我知道了) =独特(一种“行”,发生“遗产”)
这“遗产”选项不支持分类数组、日期时间数组万博1manbetx、持续时间数组、calendarDuration数组、表或时间表。
“遗产”
全部收缩
定义具有重复值的向量。
A = [9 2 9 5];
的唯一值一种.
C =1×32 5 9.
创建一个包含重复数据的表。
Name = {“弗雷德”;“贝蒂”;“鲍勃”;“乔治”;“简”};年龄=[38,43岁,38;40;38);身高= [71;69;64;67;64);重量= [176;163;131;185;131);一个=表(年龄、身高、体重、“RowNames”、名称)
A =5×3表年龄高度重量___ ______ ______ FRED 38 71 176贝蒂43 69 163 Bob 38 64 131 George 40 67 185 Jane 38 64 131
求的唯一行一种.独特的返回一种按第一个变量排序年龄然后是第二个变量高度.
年龄
高度
C =4×3表年龄身高体重___ ______ ______鲍勃38 64 131弗雷德38 71 176乔治40 67 185贝蒂43 69 163
在第一个变量中找到具有唯一值的表行年龄.如果您只希望一个表变量包含唯一的值,则可以使用独特的从表中提取这些行。
[c,ia] =独特(A.age);b = a(ia,:)
B =3×3表年龄身高体重___ ______ ______弗雷德38 71 176乔治40 67 185贝蒂43 69 163
的唯一值一种和指数向量IA.和我知道了,这样C = (ia)和一个= C(集成电路).
[C, ia, ic] =唯一的(A)
ia =3×12 4 1
ic =4×13 1 3 2
使用一些重复的行创建一个10×3矩阵。
a = randi(3,10,3)
A =10×33 1 2 3 3 1 1 3 3 3 3 3 3 3 3 1 1 3 3 1 1 3 1 2 3 3 3 3 3 1 1 3 1 2 3 3 3 3 3 3 3 3 1 1 2 3 3 3 3 3 3 1 1 2 3 3 3 3 3 3 3 1
求的唯一行一种根据前两列的数据。指定三个输出以返回索引向量IA.和我知道了.
[C ia ic] =独特((:,1:2),'行')
C =7×21 1 1 2 1 3 2 3 3 1 3 2 3 3
ia =7×16 7 3 5 1 4 2
ic =10×15 7 3 6 4 1 2 4 7 7
采用IA.索引一种并检索前两列中具有唯一元素组合的行。
: uA = (ia)
uA =7×31 1 3 1 2 3 1 3 3 2 3 3 3 1 2 3 2 3 3 3 1
找到向量中唯一的元素,然后使用积累计算每个唯一元素出现的次数。
积累
从1到5创建随机整数的向量。
A = randi([1 5],200,1);
查找矢量中的唯一元素。返回索引矢量IA.和我知道了.
[C ia ic] =独特的(一个);
计算每个元素进入的次数C出现在一种.指定我知道了作为第一个输入积累和1作为第二个输入,使得该功能计数重复的下标我知道了.总结结果。
1
a_counts = accumarray (ic, 1);[C, a_counts] = [C, a_counts]
value_counts =.5×21 46 2 36 3 38 4 39 5 41
使用setOrder参数指定值的排序C.
指定'稳定的'如果你想要值C有与…相同的顺序一种.
A = [9 2 9 5];[C, ia, ic] =唯一的'稳定的')
C =1×39 2 5.
ia =3×11 2 4
ic =4×11 2 1 3
或者,您可以指定“排序”命令。
[C, ia, ic] =唯一的“排序”)
定义一个包含南.
南
A = [5 5 NaN NaN];
C =1×35南南
独特的对待南价值观是截然不同的。
创建一个向量X.得到第二个向量y通过转换和未转变X.这个转换引入了四舍五入的差异y.
X
y
x =(1:6) *π;y = 10 ^ log10 (x);
验证X和y是不同的。
X-Y.
ans =.6×110-14年×0.0444 0 0 0 0 0 -0.3553
采用独特的查找连接的向量中唯一的元素(x, y).这独特的函数执行精确比较并确定X不完全等于y.这些是具有非零差异的相同元素X-Y..因此,C包含值出现是重复的。
(x, y)
c =唯一([x; y])
c =8×13.1416 3.1416 6.2832 9.4248 12.5664 15.7080 18.8496 18.8496
采用uniquetol.使用小公差进行比较。uniquetol.将容差的元素视为平等。
uniquetol.
C = uniquetol ((x, y))
C =6×13.1416 6.2832 9.4248 12.5664 15.7080 18.8496
创建字符向量的单元格数组。
一个= {'一'那“两个”那“22”那'一'那“两个”};
找到包含的唯一字符向量一种.
C =1 x4单元格{'One'} {'One'} {' 22 '} {'two'}
创建一个字符向量的单元格数组,一种,其中一些矢量有尾随空格。
一个= {'狗'那“猫”那'鱼'那'马'那“狗”那'鱼 '};
C =1x6细胞{“猫”}{‘狗’}{‘狗’}{‘鱼’}{‘鱼’}{'马'}
独特的将字符向量单元格数组的尾随空格视为不同的字符。
使用“遗产”国旗的行为保存独特的来自R2012B和代码中的先前版本。
找到独特的元素一种随着当前的行为。
A = [9 2 9 5];[C1,IA1,IC1] =独特(a)
C1 =1×32 5 9.
ia1 =3×12 4 1
IC1 =4×13 1 3 2
找到独特的元素一种,并保留遗留行为。
[C2,IA2,IC2] =独特(A,“遗产”)
C2 =1×32 5 9.
ia2 =1×32 4 3.
IC2 =1×43 1 3 2
输入数组。
如果一种那么,是一张桌子吗独特的做不考虑行名。具有相同值但名称不同的两行被认为是相等的。
如果一种那么,有时间表吗独特的考虑到行时间。具有相同值但不同时间的两行不被认为是相等的。
如果一种是一个类别数组,则排序顺序由类别的顺序决定。要查看类别数组的排序顺序,请使用类别功能。
类别
一种也可以是具有以下类方法的对象:
排序(要么sortrows为'行'选项)
排序
sortrows
不
对象类方法必须彼此一致。这些对象包括来自相同根类的异构阵列。例如,一种可以是图形对象句柄数组。
订单标志,指定为“排序”或'稳定的',表示值(或行)的顺序C.
中的值(或行)C按返回的排序顺序返回排序.
C = unique([5 5 3 4],“排序”)
5 .答案:C
中的值(或行)C以相同的顺序返回一种.
C = unique([5 5 3 4],'稳定的')
4 .选C
数据类型:字符|字符串
字符
字符串
出现标志,指定为'第一的'或'最后的'表明,是否IA.应包含在重复的值中找到的第一个或最后一个指数一种.
[C,IA,IC] =独特([9 9 9],'最后','遗留')
ia = 3
[C,ia,ic] = unique([9 9 9],'first')
ia = 1
独特的数据一种,返回为阵列。班级C是否与输入的类相同一种.的形状C取决于输入是向量还是矩阵:
如果是'行'未指定标志一种是一排矢量,然后C是一排矢量。
如果是'行'未指定标志一种不是行向量吗C是一个列向量。
如果是'行'则指定FlagC一个矩阵是否包含唯一的行一种.
索引一种的索引列向量返回第一个重复元素的出现。当“遗产”标志被指定,IA.是一排矢量,包含索引去年重复元素的出现。
指标一般满足C = (ia).如果一种是一张桌子,或者如果是'行'选项,则: C = (ia).
索引C时作为列向量返回“遗产”未指定Flag。我知道了包含满足以下属性的索引。
如果一种是一个矢量,然后一个= C(集成电路).
如果一种是矩阵还是数组A(:) = C(IC).
如果一种是一张桌子,或者如果是'行'选项,则: = C(集成电路).
采用uniquetol.使用公差查找唯一的浮点数。
要在相对于变量子集中查找表或时间表中的唯一行,您可以使用列数据。例如,您可以使用独特的((:,var))),在那里var是正整数、正整数向量、变量名、变量名单元格数组或逻辑向量。或者,您可以使用vartype.创建用于选择指定类型变量的下标。
独特的((:,var)))
var
vartype.
此功能支持具有限制的高阵列:万博1manbetx
对于高向量和高表,使用语法:
[C ia ic] =独特(A)
对于高矩阵,使用语法:
C =独特(“行”)
[C ia ic] =独特(“行”),
有关更多信息,请参见用于内存不足数据的高数组.
使用注意事项及限制:
代码生成不支持第一个参数的单元格数组。万博1manbetx
当您没有指定'行'选择:
输入一种一定是一个向量。如果您指定了“遗产”选项,输入一种必须是一排矢量。
可变尺寸行向量的第一尺寸必须具有固定长度1.可变尺寸列向量的第二维度必须具有固定长度1。
输入[]不支持。万博1manbetx例如,使用1 × 0或0 × 1输入,0 (1,0),表示空集。
[]
0 (1,0)
如果您指定了“遗产”选项,则空输出为行向量,1 × 0。它们从不是0乘0的。
当您指定两者时'行'选择和选择“遗产”选择,输出IA.和我知道了是列向量。如果这些输出是空的,那么它们也是0×1,即使输出也是如此C是0-by-0。
当setOrder不是'稳定的'或者当你指定“遗产”选项,输入一种必须已经按升序排序。第一个输出,C,按升序排序。
复杂的输入必须是单或双.
单
双
这“遗产”不支持国旗。万博1manbetx
不支持64位整数。万博1manbetx
有关更多信息,请参见在GPU上运行matlab函数(并行计算工具箱).
该函数完全支持分布式数组。万博1manbetx有关更多信息,请参见使用分布式数组运行MATLAB函数(并行计算工具箱).
相交|ismember|订购|setdiff.|setxor|排序|联盟|uniquetol.
相交
ismember
订购
setdiff.
setxor
联盟
您有这个示例的修改版本。您想打开这个示例与您的编辑吗?
您单击了与此MATLAB命令对应的链接:
通过在MATLAB命令窗口中输入命令来运行命令。Web浏览器不支持MATLAB命令。万博1manbetx
选择一个网站,在那里获得翻译的内容,并看到当地的活动和优惠。根据您的位置,我们建议您选择:.
你也可以从以下列表中选择一个网站:
选择中国网站(以中文或英文)以获取最佳网站性能。其他MathWorks国家网站未优化您的位置。
与当地办事处联系