文档帮助中心
数组中的唯一值
C=唯一(A)
C =唯一的(A,setOrder)
C=唯一(A,出现)
C=唯一(A,___“,”行“)
C=唯一(A,“行”,___)
[C,ia,ic]=唯一(___)
[C,ia,ic]=唯一(A,“遗留的”)
[C,IA,IC] =唯一的(A, '行', '旧版')
[C,ia,ic]=唯一(A,出现次数,'legacy')
[C,IA,IC] =唯一的(A, '行',发生, '传统')
例
C=唯一(一个)返回相同的数据作为一个,但没有重复。C是按顺序排列的。
C=唯一(一个)
C
一个
如果一个是一张桌子还是时间表独特的返回中的唯一行一个按顺序排列。对于时间表,独特的在确定行是否唯一时考虑行时间和行值,并对输出时间表进行排序C按行倍。
独特的
C=唯一(一个,定序)返回的唯一值一个按照特定的顺序。定序可'排序'(默认)或'稳定'。
C=唯一(一个,定序)
定序
'排序'
'稳定'
C=唯一(一个,发生)指定重复值时要返回的索引。发生可'第一'(默认)或'持续'。
C=唯一(一个,发生)
发生
'第一'
'持续'
C=唯一(一个,___,“行”)和C=唯一(一个,“行”,___)处理每一行一个作为一个单一的实体,并返回的唯一行一个按排序顺序。您必须指定一个并且可以选择指定定序或发生。
C=唯一(一个,___,“行”)
“行”
C=唯一(一个,“行”,___)
该“行”选项不支持电池阵列。金宝app
[C,IA,我知道了]=唯一(___)还返回索引向量IA和我知道了使用任何以前的语法。
[C,IA,我知道了]=唯一(___)
IA
我知道了
如果一个是矢量,然后C=A(ia)和A=C(集成电路)。
C=A(ia)
A=C(集成电路)
如果一个是矩阵或数组,那么C=A(ia)和A(:) = C(IC)。
A(:) = C(IC)
如果“行”选项已指定,则C=A(ia,:)和A=C(ic,:)。
C=A(ia,:)
A=C(ic,:)
如果一个那么,是一张桌子还是一张时间表C=A(ia,:)和A=C(ic,:)。
[C,IA,我知道了]=唯一(一个“,”遗产“),[C,IA,我知道了]=唯一(一个“,”行“,”传统“),[C,IA,我知道了]=唯一(一个,发生“,”遗产“),和[C,IA,我知道了]=唯一(一个,“行”,发生“,”遗产“)保留的行为独特的从R2012b和以前的版本的功能。
[C,IA,我知道了]=唯一(一个“,”遗产“)
[C,IA,我知道了]=唯一(一个“,”行“,”传统“)
[C,IA,我知道了]=唯一(一个,发生“,”遗产“)
[C,IA,我知道了]=唯一(一个,“行”,发生“,”遗产“)
该'遗留'选项不支持分类数组、日期时间数组金宝app、持续时间数组、日历持续时间数组、表或时间表。
'遗留'
全部收缩
限定具有重复值的矢量。
A = [9 2 9 5];
找出一个。
C类=1×32 5 9
创建包含一些重复数据的表。
名称={“弗雷德”;“贝蒂”;“鲍勃”;“乔治”;“简”};年龄=[38;43;38;40;38];身高=[71;69;64;67;64];体重=[176;163;131;185;131];A=桌子(年龄、身高、体重,'行名称',名称)
A =5×3桌年龄身高体重___ ______ ______佛瑞德38 71 176 43贝蒂69 163 38鲍勃64 131 40乔治67 185 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=A(ia)和A=C(集成电路)。
[C,ia,ic]=唯一(A)
ia公司=3×1个2 4 1
集成电路=4×13 1 3 2
创建一个10×3矩阵的一些重复的行。
A =兰迪(3,10,3)
A =10×33 1 2 3 3 1 1 3 3 3 3 2 3 3 3 1 3 1 2 3 2 3 3 3 2 3 3 1
查找一个基于前两列中的数据。指定三个输出以返回索引向量IA和我知道了。
[C,ia,ic]=唯一(A(:,1:2),“行”)
C类=7×21 1 1 2 1 3 3 3 1 3 2 3 3
ia公司=7×16 7 3 5 1 4 2
集成电路=10×15 7 3 6 4 1 2 4 7
采用IA索引到一个并检索前两列中具有唯一元素组合的行。
uA=A(ia,:)
行动单位=7×31 1 3 1 2 3 1 3 3 2 3 3 3 1 2 3 2 3 3 3 1
找到向量中的唯一元素,然后使用accumarray计算每个唯一元素出现的次数。
accumarray
从1到5创建随机整数的向量。
a=兰迪([15],200,1);
查找向量的独特元素。返回索引向量IA和我知道了。
[C,ia,ic]=唯一(a);
计算中每个元素的次数C出现在一个。指定我知道了作为第一个输入accumarray和1作为第二输入,使得功能重复计数中的下标我知道了. 总结结果。
1
a_counts=accumarray(ic,1);value_counts=[C,a_counts]
value_counts =5×21 46 2 36 3 38 4 39 5 41
使用定序参数指定的值的顺序C。
指定'稳定'如果你想在值C与…有相同的顺序一个。
A=[9 2 9 5];[C,ia,ic]=唯一(A,'稳定')
C类=1×39 2 5
ia公司=3×1个1 2 4个
集成电路=4×11 2 1 3年
或者,你可以指定'排序'订购。
[C,ia,ic]=唯一(A,'排序')
定义包含为NaN。
为NaN
A=[55南];
C类=1×35楠楠
独特的对待为NaN不同的值。
创建矢量X. 获得第二个向量ÿ通过转换和逆变形X. 这种转换引入了ÿ。
X
ÿ
x=(1:6)’*pi;y=10.^log10(x);
确认X和ÿ不完全相同。
X-Y
ANS =6×110个-14个×0.0444 0 0 0 0 -0.3553
采用独特的查找连接向量中的唯一元素[x;y]. 这个独特的函数执行精确比较并确定X不完全等于中的值ÿ. 这个se are the same elements that have a nonzero difference inX-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=唯一值([x;y])
C类=6×13.1416 6.2832 9.4248 12.5664 15.7080 18.8496
创建字符向量的单元格数组。
A={'一',“两个”,“二十二”,'一',“两个”};
查找包含在一个。
C类=1x4电池{1'}{1'}{22'}{2'}
创建一个字符向量的单元格数组,一个其中一些矢量的已尾部的空白。
A={'狗',“猫”,'鱼','马',“狗”,“鱼”};
C类=1X6细胞{cat'}{dog'}{dog'}{fish'}{fish'}{horse'}
独特的将字符向量的单元格数组中的尾随空白视为不同的字符。
使用'遗留'保留行为的标志独特的从R2012b并在代码中以前的版本。
找到一个与当前的行为。
A = [9 2 9 5];[C1,IA1,IC1] =唯一的(A)
C1 =1×32 5 9
ia1号=3×1个2 4 1
IC1 =4×13 1 3 2
找到一个,并保留遗留行为。
[C2,IA2,IC2] =唯一的(A,'遗留')
C2 =1×32 5 9
ia2号=1×32 4 3
IC2 =1×4个3 1 3 2
输入数组。
如果一个是一张桌子,那么独特的做不考虑行名称。具有相同值但名称不同的两行被视为相等。
如果一个是时间表,那么独特的需要排时间考虑进去。具有相同值的两个行,但不同的时代,是不相等的。
一个也可以用下面的类的方法的对象:
分类(要么索特罗斯对于“行”选项)
分类
索特罗斯
氖
对象类的方法必须是相互一致。这些对象包括从相同的根类派生异构阵列。例如,一个可以是图形对象的句柄数组。
订单标志,指定为'排序'或'稳定'中,指示值(或行)的顺序C。
中的值(或行)C按返回的排序顺序返回分类。
C=唯一([5 5 3 4],'排序')
C=3 4 5
中的值(或行)C按与中相同的顺序返回一个。
C=唯一([5 5 3 4],'稳定')
C=5 3 4
数据类型:烧焦|一串
烧焦
一串
出现标志,指定为'第一'或'持续',指示是否IA应包含第一个或最后一个指数,以中发现的重复值一个。
[C,IA,IC] =唯一的([9 9 9], '最后', '传统')
ia=3
[C,ia,ic]=唯一([9 9 9],“第一个”)
ia=1
的唯一数据一个时,返回作为数组。类的C与输入的类相同一个. 形状C取决于输入是矢量还是矩阵:
如果“行”未指定标志,并且一个是一个行向量,然后C是一个行向量。
如果“行”未指定标志,并且一个不是行向量,那么C是列向量。
如果“行”标志被指定,然后C是一个矩阵,包含一个。
索引到一个,作为索引的列向量返回给第一重复元素的发生。当。。。的时候'遗留'被指定的标志,IA是包含索引到一个行向量最后的重复元素的发生。
指标一般满足C=A(ia). 如果一个是一个表,或者如果“行”选项已指定,则C=A(ia,:)。
索引到C,当'遗留'未指定标志。我知道了包含满足以下属性索引。
如果一个是矢量,然后A=C(集成电路)。
如果一个是矩阵或数组,那么A(:) = C(IC)。
如果一个是一个表,或者如果“行”选项已指定,则A=C(ic,:)。
采用uniquetol使用公差查找唯一的浮点数。
要查找表或时间表的独特行相对于变量的一个子集,你也可以使用列下标。例如,你可以使用唯一的(A(:,变量)),其中变量是正整数、正整数向量、变量名、变量名单元格数组或逻辑向量。或者,您可以使用VARTYPE创建选择指定类型变量的下标。
唯一的(A(:,变量))
变量
VARTYPE
该功能支持与限制高大阵列:金宝app
对于高向量和高表,请使用语法:
对于高矩阵,使用语法:
C=唯一(A,“行”)
[C,ia,ic]=唯一(A,“行”)
有关详细信息,请参见内存不足数据的高数组。
使用说明和限制:
代码生成不支持第一个参数的单元格数组。金宝app
如果未指定“行”选项:
输入一个必须是矢量。如果指定'遗留'选项,输入一个必须是一个行向量。
可变大小的行向量的第一尺寸必须具有固定长度1.可变大小的列向量的第二维必须具有固定长度1。
输入[]不支持。使用1金宝app乘0或0乘1输入,例如,零(1,0),表示空集合。
[]
零(1,0)
如果您指定'遗留'选项,则空输出为行向量,1乘0。他们从来不是0比0。
当你同时指定“行”选项和'遗留'选项,输出IA和我知道了是列向量。如果这些输出是空的,那么它们是0×1,即使输出C是0逐0。
当。。。的时候定序不是'稳定'或者当您指定'遗留'选项,输入一个必须已按升序排序。第一个输出,C,是按升序排序。
复杂的输入必须单一的或双重的。
单一的
双重的
该'遗留'不支持标志。金宝app
不支持64位整数。金宝app
有关详细信息,请参见在GPU上运行MATLAB功能(并行计算工具箱)。
此函数完全支持分布式数组。有关详细信息,金宝app请参见使用分布式阵列运行MATLAB函数(并行计算工具箱)。
相交|伊斯曼|issorted|setdiff|凝固物|分类|联盟|uniquetol
相交
伊斯曼
issorted
setdiff
凝固物
联盟
您的系统上存在此示例的修改版本。是否改为打开此版本?
您单击对应于该MATLAB命令的链接:
通过在MATLAB命令窗口中输入命令来运行该命令。Web浏览器不支持MATLAB命令。金宝app
选择一个网站以获取可用的翻译内容,并查看本地活动和优惠。根据您的位置,我们建议您选择:。
您还可以选择从下面的列表中的网站:
选择最佳的网站性能的中国网站(在中国或英文)。其他MathWorks的国家网站都没有从您的位置访问进行了优化。
联系当地办事处