帮助文档-翻译-Statistics Toolbox-Exploratory Data Analysis-Cluster Analysis-Hierarchical Clustering(cluster,clusterdata)(2)

例子

从样本数据中生成层次聚类树

这个例子显示了如果利用样本数据生成层次聚类数,并用3维散点图展示该聚类。

产生样本数据矩阵,其中的随机数由标准均匀分布(U(0,1))生成。

  rng('default'); % For reproducibilty

  X = [gallery('uniformdata',[10 3],12);...

  gallery('uniformdata',[10 3],13)+1.2;...

  gallery('uniformdata',[10 3],14)+2.5];

计算元素之间的距离并从样本数据生成层次聚类数。列出第二个聚类中的所有元素。

  T = clusterdata(X,'maxclust',3);

  find(T == 2) 

  ans =

      11     12     13     14     15     16     17     18     19     20

将数据绘成图形,其中每一个类别对应一种不同的颜色。

  scatter3(X(:,1),X(:,2),X(:,3),100,T,'filled')

利用Ward's Linkage生成层次聚类树

这个例子显示了如果利用Ward's Linkage生成层次聚类数,并用3维散点图展示该聚类。

产生20,000行3列的样本数据矩阵,其中的随机数由标准均匀分布(U(0,1))生成。

  rng('default'); % For reproducibilty

  X = rand(20000,3);

利用Ward's Linkage生成层次聚类树。将'savememory'设置为'on'来构造聚类但不计算距离矩阵。

  c = clusterdata(X,'linkage','ward','savememory','on','maxclust',4);

将数据绘成图形,其中每一个类别对应一种不同的颜色。

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

posted @ 2015-09-23 14:04  永远爱数学  阅读(229)  评论(1编辑  收藏  举报