主要内容

轮廓

剪影情节

描述

例子

轮廓(X克星地块群轮廓为N.——- - - - - -P.输入数据矩阵X,给定集群分配克星每个点(观察)X

例子

轮廓(X克星距离使用中指定的点间距离度量绘制轮廓距离

例子

轮廓(X克星距离DistParameter在指定时接受一个或多个额外的距离度量参数值距离作为自定义距离功能手柄@distfun它接受附加参数值。

例子

S.=剪影(___返回轮廓值S.对于前一个语法中的任何输入参数组合而无需绘制群集剪影。

例子

[S.H] =剪影(___绘制轮廓并返回图形句柄H除了轮廓值S.

例子

全部收缩

使用不同的距离度量从聚集的数据创建轮廓图。

生成随机样本数据。

rng (“默认”%的再现性X = [randn (10, 2) + 3; randn (10, 2) 3);

创建数据的散点图。

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

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

散点图表明,数据似乎被分成两个相同大小的簇。

将数据分区为两个群集使用kmeans用默认的平方欧几里得距离度量。

clust = kmeans (X, 2);

克星包含数据的群集索引。

使用默认的平方欧几里德距离度量从群集数据创建剪影图。

剪影(x,clust)

图中包含一个轴对象。axis对象包含一个bar类型的对象。

剪影图显示数据被分成两个大小相同的簇。两个星团中的所有点都有较大的剪影值(0.8或更大),表明星团分离得很好。

使用欧几里得距离度量从聚类数据创建一个轮廓图。

剪影(X,Clust,“欧几里得”

图中包含一个轴对象。axis对象包含一个bar类型的对象。

剪影图显示数据被分成两个大小相同的簇。两个星团中的所有点都有较大的剪影值(0.6或更大),表明星团被很好地分离。

从聚类数据中计算轮廓值。

生成随机样本数据。

rng (“默认”%的再现性X = [randn (10, 2) + 1; randn (10, 2) 1];

群集数据X根据距离距离的绝对差异总和kmeans

clust = kmeans (X 2“距离”“cityblock”);

克星包含数据的群集索引。

从聚集的数据中计算轮廓值。指定距离度量为“cityblock”表示kmeans聚类是基于绝对差异之和。

s =轮廓(X, clust,“cityblock”
s =20×10.0816 0.0816 0.5848 0.1906 0.2781 0.3954 0.4050 0.0897 0.0897 0.5416 0.6203 0.6664⋮

使用自定义Chi-Square距离度量查找来自聚类数据的轮廓值。验证Chi-Square距离度量等同于欧几里德距离度量,而是具有可选的缩放参数。

生成随机样本数据。

rng (“默认”);%的再现性X = [randn (10, 2) + 3; randn (10, 2) 3);

群集数据X使用kmeans用默认的平方欧几里得距离度量。

clust = kmeans (X, 2);

找到轮廓值,并使用欧几里得距离度量从聚类数据创建一个轮廓图。

[s,h] =剪影(x,clust,“欧几里得”

图中包含一个轴对象。axis对象包含一个bar类型的对象。

s =20×10.6472 0.72441 0.5682 0.7658 0.7864 0.6397 0.7253 0.7783 0.7054 0.7442⋮
H =图(1)具有属性:Number:1名称:''颜色:[1 1 1]位置:[348 480 583 437]单位:'Pixels'显示所有属性

卡方距离j维点XZ.

χ X Z. = j = 1 j W. j X j - Z. j 2

在哪里 W. j 重量与尺寸有关吗j

为每个维度设置权重,并指定卡方距离函数。距离函数必须:

  • 作为输入论点N.——- - - - - -P.输入数据矩阵X,一排X(例如,X)和缩放(或重量)参数W.

  • 计算距离X每一行X

  • 返回长度的向量N..矢量的每个元素是对应的观察之间的距离X和对应于每行的观察X

w = [0.4;0.6];%设置任意权重进行说明chiSqrDist = @ x, Z, w)√((bsxfun (@minus, x, Z)。^ 2)* w);

使用自定义距离度量查找来自群集数据的剪影值Chisqrdist.

s1 =轮廓(X, clust chiSqrDist w)
s1 =20×10.6288 0.7239 0.6244 0.7696 0.7957 0.7957 0.6688 0.7386 0.7865 0.7223 0.7572⋮

设置尺寸的重量为1以使用Chisqrdist.作为欧几里得距离度量。找到剪影值,并验证他们是相同的值在S.

w2 = [1;1);s2 =轮廓(X, clust chiSqrDist w2);AreValuesEqual = isequal (s2, s)
AreValuesEqual =逻辑1

轮廓值相同S.s2

输入参数

全部收缩

输入数据,指定为大小的数字矩阵N.——- - - - - -P..行对应点,列对应坐标。

数据类型:|

群集赋值,指定为包含中每个点的群集名称的字符向量的分类变量、数字向量、字符矩阵、字符串数组或单元数组X

轮廓对待s和空值克星缺少值并忽略相应的行X

数据类型:||字符|字符串|细胞|分类

距离度量,指定为字符向量,字符串标量或函数句柄,如本表中所述。

公制 描述
“欧几里得”

欧氏距离

“sqEuclidean”

平方欧几里得距离(默认)

“cityblock”

绝对差异的总和

'余弦'

一个减去点之间夹角的余弦(作为向量处理)

“相关”

一个减去点之间的样本相关性(视为值序列)

'汉明'

不同的坐标百分比

“Jaccard”

不同的非零坐标的百分比

向量 的创建形式中,成对距离的数字行向量Pdist.功能。X在这种情况下不使用,可以安全地设置为[]
@distfun

自定义距离功能句柄。距离功能具有表单

函数d = distfun(x0,x,DistParameter) %计算距离…
在哪里

  • X0是一个1——- - - - - -P.传染媒介包含输入数据矩阵的单点(观察)X

  • X是一个N.——- - - - - -P.矩阵点。

  • DistParameter表示特定于的一个或多个附加参数值@distfun

  • D.是一个N.——- - - - - -1距离矢量,和D(k)是观察之间的距离X0X (k,:)

有关更多信息,请参见距离度量

例子:'余弦'

数据类型:字符|字符串|function_handle.||

距离度量参数值,指定为正标量、数字向量或数字矩阵。此参数仅在指定自定义距离函数句柄时有效@distfun除了输入参数之外,它可以接受一个或多个参数值X0X

例子:轮廓(X, clust distfun, p1, p2)在哪里p1p2额外的距离度量参数值为@distfun

数据类型:|

输出参数

全部收缩

剪影值,返回为N.——- - - - - -1值矢量范围从11.轮廓值衡量的是一个点与它自己簇中的点的相似程度,当与其他簇中的点相比较时。值的范围从11.高轮廓值表示点与其自己的群集相匹配,与其他群集不当。

数据类型:|

图句柄,作为标量返回。您可以使用图形句柄来查询和修改图形属性。有关更多信息,请参见图的属性

更多关于

全部收缩

剪影值

每个点的轮廓值是一个衡量该点与它自己簇中的点的相似程度的指标,与其他簇中的点相比较。

轮廓值如果一世点定义为

Si = (bi-ai)/ max(ai,bi)

在哪里AI.是距离的平均距离一世TH指向同一群集中的其他点一世,到机场的最小平均距离是多少一世不同簇中的点对点,在簇上最小化。

轮廓值从11.高轮廓值表示一世与自己的集群很匹配,与其他集群相匹配。如果大多数点具有高轮廓值,则群集解决方案是合适的。如果许多点具有低电平或负轮廓值,则群集解决方案可能具有太多或太少的集群。您可以使用轮廓值作为具有任何距离度量的聚类评估标准。

参考文献

考夫曼和卢梭。查找数据中的组:群集分析介绍.霍博肯:约翰威利父子公司,1990。

之前介绍过的R2006a