帮助文档-翻译-Statistics Toolbox-Exploratory Data Analysis-Cluster Analysis-Hierarchical Clustering(linkage)(6)

例子


Compare Cluster Assignments to Clusters

导入样本数据。

  load fisheriris

从安德森鸢尾花卉数据集用Ward linkage计算四个簇,并忽略种类信息。

  Z = linkage(meas,'ward','euclidean');

  c = cluster(Z,'maxclust',4);

观察聚类结果和三个种类是怎样的对应关系。

  crosstab(c,species)

ans =

     0    25     1

     0    24    14

     0     1    35

     50     0     0

打印Z的前5行。

  firstfive = Z(1:5,:)

firstfive =

  102.0000  143.0000         0

    8.0000   40.0000    0.1000

    1.0000   18.0000    0.1000

   10.0000   35.0000    0.1000

  129.0000  133.0000    0.1000

生成Z的系统树图。

  dendrogram(Z)

对数据聚类并绘出结果

随机生成20000个观测点的样本数据。

  rng('default') % For reproducibility

  X = rand(20000,3);

用Ward's linkage生成层次树。

  Z = linkage(X,'ward','euclidean','savememory','on');

如果你将savememory设置为'off',如果你的计算机没有足够的内存来存放距离矩阵,你将会收到一个内存溢出的错误。

将数据聚类成4组并打印结果。

  c = cluster(Z,'maxclust',4);

  scatter3(X(:,1),X(:,2),X(:,3),10,c)

 

posted @ 2015-09-23 18:42  永远爱数学  阅读(160)  评论(0编辑  收藏  举报