主要内容

集群

从联系构建集聚集群

描述

T=群集(Z,“截止”,C)从聚合层次群集树定义群集Z这个inputZ是的输出联动输入数据矩阵的函数X集群削减Z使用C作为不一致系数的阈值(或不一致的树中节点的值)。输出T包含每个观察的群集分配(行X).

实例

T=群集(Z,“截止”,C,“深度”,D)评估不一致的通过查看深度来确定值D低于每个节点。

实例

T=群集(Z,“截止”,C,“标准”,标准)要么使用“不一致”(默认)或“距离”作为标准用于定义集群。标准必须小于C对于集群定义集群。

实例

T=群集(Z,“MaxClust”,N)定义的最大值N使用“距离”作为定义集群的标准。

例子

全部崩溃

通过在每个节点下方四个深度处评估不一致的值,对随机生成的数据执行聚集聚类。

随机生成样本数据。

rng(“默认”);%为了再现性2 X = [(randn(20日)* 0.75)+ 1;2 (randn(20日)* 0.25)1);

创建数据的散点图。

散射(X (: 1), (2):,);标题(“随机生成的数据”);

图中包含一个轴。标题为随机生成数据的轴包含一个散射类型的对象。

使用病房联动法。

Z =连杆(X,“病房”);

创建数据的树状图。

树状图(Z)

图中包含轴。轴包含29个line类型的对象。

散点图和树状图似乎显示了数据中的两个聚类。

使用3作为不一致系数的阈值对数据进行聚类,并在每个节点下方寻找深度为4的节点。绘制结果集群。

T=簇(Z,“切断”3.“深度”gscatter(X(:,1),X(:,2),T)

图形包含一个轴。轴包含2个line类型的对象。这些对象表示1,2。

集群在数据中标识两个集群。

在服务器上执行聚合群集鱼腥草数据集使用“距离”作为定义集群的标准。可视化数据的集群分配。

加载鱼腥草数据集。

负载鱼腥草

使用物种作为分组变量,可视化数据的二维散点图。为三个不同物种指定标记颜色和标记符号。

gscatter(量(:1)量(:,2),物种,“rgb”,‘*’)头衔(“Fisher's虹膜数据的实际聚类”)

图中包含一个坐标轴。标题为Actual Clusters of Fisher's Iris Data的轴包含3个类型为line的对象。这些物品代表着维珍卡。

使用“平均”方法和步骤“切比切夫”米制的

Z =连杆(量,“平均”,“切比切夫”);

使用1.5的阈值对数据进行群集“距离”标准

T=簇(Z,“切断”,1.5,“标准”,“距离”)
T=150×12 2 2 2 2 2 2 2 2 2 ⋮

T包含与群集分配相对应的数字。找到需要的类的数量集群识别。

长度(唯一(T))
ans = 3

集群为的指定值标识三个类切断标准

使用。可视化聚类结果的二维散点图T作为分组变量。为三个不同的类指定标记颜色和标记符号。

gscatter(meas(:,1),meas(:,2),T,“rgb”,‘*’)头衔(Fisher's Iris数据的聚类分配)

图中包含一个坐标轴。Fisher's Iris Data的标题为Cluster Assignments的轴包含3个类型为line的对象。这些对象代表1 2 3。

聚类正确地识别了setosa类(第2类)属于不同的聚类,但对VersionColor类和virginica类(分别为第1类和第3类)的区分较差。请注意,散点图使用中包含的数字标记类T

在。中找到最多三个群集鱼腥草数据集和比较花的聚类分配到他们已知的分类。

加载示例数据。

负载鱼腥草

使用“平均”方法和步骤“切比切夫”米制的

Z =连杆(量,“平均”,“切比切夫”);

在数据中最多查找三个群集。

T=簇(Z,“maxclust”,3);

创建一个树状图Z.要查看这三个集群,请使用“ColorThreshold”在倒数第三和倒数第二连杆之间的中间切断。

cutoff =中位数([Z(end-2,3) Z(end-1,3)]);系统树图(Z,“ColorThreshold”,截止)

图中包含轴。轴包含29个line类型的对象。

显示文件的最后两行Z来看看这三个集群是如何组合成一个集群的。联动将第293个(蓝色)簇与第297个(红色)簇组合,形成具有以下链接的第298个簇:1.7583联动然后将第296(绿色)簇与第298簇合并。

lastTwo=Z(end-1:end,:)
最后两个=2×3293.0000 297.0000 1.7583 296.0000 298.0000 3.4445

查看集群分配如何对应于这三个物种。例如,其中一个集群包含50第二种和的花40第三种的花。

交叉表(T,物种)
ans=3×30 0 10 0 50 40 50 0 0

随机生成样本数据20,000个观察。

rng(“默认”)%为了再现性X=兰特(20000,3);

使用病房联动法。在这种情况下“保存内存”选择的聚类数据函数设置为“开”默认情况下。通常,为指定最佳值“保存内存”基于X和可用内存。

Z =连杆(X,“病房”);

将数据最多分为四组,并绘制结果。

c=簇(Z,“Maxclust”,4); 散射体3(X(:,1),X(:,2),X(:,3),10,c)

图中包含一个坐标轴。坐标轴包含一个散点类型的对象。

集群标识数据中的四个组。

输入参数

全部崩溃

聚合层次聚类树,它是联动函数,指定为数值矩阵。输入数据矩阵X具有M行(或观察),联动返回一个(M– 1)-by-3矩阵Z.来解释一下联动创建群集树,请参见Z

例子:Z =连杆(X),在那里X是输入数据矩阵吗

数据类型:|

定义群集的阈值,指定为正标量或正标量的向量。集群使用C作为节点高度或不一致系数的阈值,取决于标准用于在分层群集树中定义群集。

  • 如果定义簇的标准是“距离”然后集群如果节点的高度小于,则将节点上或节点下的所有叶子分组到集群中C

  • 如果定义簇的标准是“不一致”,那么不一致的节点及其所有子节点的值必须小于C对于集群将它们分组到一个集群中。集群从集群树的根开始Z并在树中向下移动,直到遇到不一致的值小于阈值C,并且其子节点(或子节点)具有小于的不一致值C这个n集群将节点上或节点下的所有叶子分组到一个集群中(如果节点本身是叶子,则分组为单例)。集群跟踪树中的每个分支,直到所有叶子节点都在集群中。

例子:簇(Z,'Cutoff',0.5)

数据类型:|

用于计算不一致值的深度,指定为数字标量。集群通过查看深度来评估不一致的值D低于每个节点。

例子:簇(Z,'Cutoff',0.5,'Depth',3)

数据类型:|

定义簇的标准,指定为“不一致”“距离”

如果定义簇的标准是“距离”然后集群如果节点的高度小于,则将节点上或节点下的所有叶分组为一个簇(如果节点本身是叶,则为一个单体)C。树中节点的高度表示在该节点处合并的两个子节点之间的距离。指定“距离”的水平切片对应的集群树状图的情节Z

如果定义簇的标准是“不一致”然后集群将一个节点及其所有子节点分组到一个集群中,如果不一致系数(或不一致的值)小于C.说明“不一致”相当于集群(Z,“截止”,C)

例子:簇(Z、‘截止’、0.5、‘标准’、‘距离’)

数据类型:烧焦|字符串

要形成的最大簇数,指定为正整数或正整数向量。集群构造的极大值N集群,使用“距离”作为定义集群的标准。树中每个节点的高度表示在该节点处合并的两个子节点之间的距离。集群求出横切穿过树的最小高度N或更少的群集。请参阅指定任意群集更多细节。

例子:簇(Z,'MaxClust',5)

数据类型:|

输出参数

全部崩溃

群集分配,作为数字向量或矩阵返回。对于(M– 1)-by-3层次聚类树Z(输出联动给定输入X),T属性的集群分配M行(观察值)X

大小T取决于相应的大小CN

  • 如果C是一个正标量,那么T向量的长度是多少M

  • 如果N是一个正整数,那么T向量的长度是多少M

  • 如果C是一个长度L正标量向量,然后T是一个M-借-L矩阵中每个值有一列C

  • 如果N是一个长度L正整数向量T是一个M-借-L矩阵中每个值有一列N

选择功能

如果你有一个输入数据矩阵X,你可以使用聚类数据对中的每个观测(行)执行聚类并返回聚类指数X这个聚类数据函数为您执行所有必要的步骤,因此您不需要执行pdist,联动,集群功能是分开的。

之前介绍过的R2006a