当前位置:首页 > 知识库 > 正文
龙哥云资源网

matlab聚类算法实例(matlab聚类分析的应用案例)

聚类分析算法

聚类分析又称群分析,它是研究(样品或指标)分类问题的一种统计分析方法,同时也是数据挖掘的一个重要算法。聚类分析是由若干模式组成的,通常,模式是一个度量的向量,聚类分析以相似性为基础,在一个聚类中的模式之间比不在同一聚类中的模式之间具有更多的相似性。

对于聚类算法,大多数用SPSS软件实现,通常导入数据,并且选择聚类方法即可实现,本节借用MATLAB软件,基于14种不同的聚类分析方法,实现样品聚类。

14种聚类方法

(1)最长距离法

X=[16.214922000-8.26.2; 15.79702209-20.61.9; 16.312602085-17.32.8; 17.214221726-9.54.6; 18.818741709-4.98.0; 17.916981848-4.57.5; 16.39761239-4.65.6];D=pdist(X,'euclid');M=squareform(D);Z=linkage(D,'complete');H=dendrogram(Z);xlabel('City');ylabel('Scale');C=cophenet(Z,D);T=cluster(Z,3);matlab聚类算法实例(matlab聚类分析的应用案例)  第1张

(2) 最短距离法

X=[16.214922000-8.26.2; 15.79702209-20.61.9; 16.312602085-17.32.8; 17.214221726-9.54.6; 18.818741709-4.98.0; 17.916981848-4.57.5; 16.39761239-4.65.6];D=pdist(X,'euclid');M=squareform(D);Z=linkage(D,'single');H=dendrogram(Z);xlabel('City');ylabel('Scale');C=cophenet(Z,D);T=cluster(Z,'cutoff',0.8);matlab聚类算法实例(matlab聚类分析的应用案例)  第2张

(3)综合聚类子程序

X=[16.214922000-8.26.2; 15.79702209-20.61.9; 16.312602085-17.32.8; 17.214221726-9.54.6; 18.818741709-4.98.0; 17.916981848-4.57.5; 16.39761239-4.65.6];T=clusterdata(X,0.8);Re=find(T=5)

(4)重心法&标准欧氏距离

S=['福冈';'合肥';'武汉';'长沙';'桂林';'温州';'成都'];X=[16.214922000-8.26.2; 15.79702209-20.61.9; 16.312602085-17.32.8; 17.214221726-9.54.6; 18.818741709-4.98.0; 17.916981848-4.57.5; 16.39761239-4.65.6];D=pdist(X,'seuclid');M=squareform(D);Z=linkage(D,'centroid');H=dendrogram(Z,'labels',S);xlabel('City');ylabel('Scale');C=cophenet(Z,D);T=cluster(Z,3);matlab聚类算法实例(matlab聚类分析的应用案例)  第3张

(5)重心法&欧氏距离平方

S=['福冈';'合肥';'武汉';'长沙';'桂林';'温州';'成都'];X=[16.214922000-8.26.2; 15.79702209-20.61.9; 16.312602085-17.32.8; 17.214221726-9.54.6; 18.818741709-4.98.0; 17.916981848-4.57.5; 16.39761239-4.65.6];D=pdist(X,'euclid');D2=D.^2;M=squareform(D2);Z=linkage(D2,'centroid');H=dendrogram(Z,'labels',S);xlabel('City');ylabel('Scale');C=cophenet(Z,D2);T=cluster(Z,3);matlab聚类算法实例(matlab聚类分析的应用案例)  第4张

(6)重心法&精度加权距离

S=['福冈';'合肥';'武汉';'长沙';'桂林';'温州';'成都'];X=[16.214922000-8.26.2; 15.79702209-20.61.9; 16.312602085-17.32.8; 17.214221726-9.54.6; 18.818741709-4.98.0; 17.916981848-4.57.5; 16.39761239-4.65.6];[n,m]=size(X);stdx=std(X);X2=X./stdx(ones(n,1),:);D=pdist(X2,'euclid');M=squareform(D);Z=linkage(D,'centroid');H=dendrogram(Z,'labels',S);xlabel('City');ylabel('Scale');C=cophenet(Z,D);T=cluster(Z,3);matlab聚类算法实例(matlab聚类分析的应用案例)  第5张

(7)最短距离法&基于主成分的标准欧式距离

S=['福冈';'合肥';'武汉';'长沙';'桂林';'温州';'成都'];X=[16.214922000-8.26.2; 15.79702209-20.61.9; 16.312602085-17.32.8; 17.214221726-9.54.6; 18.818741709-4.98.0; 17.916981848-4.57.5; 16.39761239-4.65.6];[E,score,eigen,T]=princomp(X);D=pdist(score,'seuclid');M=squareform(D);Z=linkage(D,'single');H=dendrogram(Z,'labels',S);xlabel('City');ylabel('Scale');C=cophenet(Z,D);T=cluster(Z,3);matlab聚类算法实例(matlab聚类分析的应用案例)  第6张

(8)平均法&标准欧式距离

S=['福冈';'合肥';'武汉';'长沙';'桂林';'温州';'成都'];X=[16.214922000-8.26.2; 15.79702209-20.61.9; 16.312602085-17.32.8; 17.214221726-9.54.6; 18.818741709-4.98.0; 17.916981848-4.57.5; 16.39761239-4.65.6];D=pdist(X,'seuclid');M=squareform(D);Z=linkage(D,'average');H=dendrogram(Z,'labels',S);xlabel('City');ylabel('Scale');C=cophenet(Z,D);T=cluster(Z,3);matlab聚类算法实例(matlab聚类分析的应用案例)  第7张

(9)权重法&标准欧式距离

S=['福冈';'合肥';'武汉';'长沙';'桂林';'温州';'成都'];X=[16.214922000-8.26.2; 15.79702209-20.61.9; 16.312602085-17.32.8; 17.214221726-9.54.6; 18.818741709-4.98.0; 17.916981848-4.57.5; 16.39761239-4.65.6];D=pdist(X,'seuclid');M=squareform(D);Z=linkage(D,'weighted');H=dendrogram(Z,'labels',S);xlabel('City');ylabel('Scale');C=cophenet(Z,D);T=cluster(Z,3);matlab聚类算法实例(matlab聚类分析的应用案例)  第8张

(10)最短距离法&马氏距离

S=['福冈';'合肥';'武汉';'长沙';'桂林';'温州';'成都'];X=[16.214922000-8.26.2; 15.79702209-20.61.9; 16.312602085-17.32.8; 17.214221726-9.54.6; 18.818741709-4.98.0; 17.916981848-4.57.5; 16.39761239-4.65.6];D=pdist(X,'mahal');M=squareform(D);Z=linkage(D,'single');H=dendrogram(Z,'labels',S);xlabel('City');ylabel('Scale');C=cophenet(Z,D);T=cluster(Z,3);matlab聚类算法实例(matlab聚类分析的应用案例)  第9张

(11)重心法&标准化数据的的欧式距离

S=['福冈';'合肥';'武汉';'长沙';'桂林';'温州';'成都'];X=[16.214922000-8.26.2; 15.79702209-20.61.9; 16.312602085-17.32.8; 17.214221726-9.54.6; 18.818741709-4.98.0; 17.916981848-4.57.5; 16.39761239-4.65.6];[n,m]=size(X);mv=mean(X);st=std(X);x=(X-mv(ones(n,1),:))./st(ones(n,1),:);D=pdist(X,'euclid');M=squareform(D);Z=linkage(D,'centroid');H=dendrogram(Z,'labels',S);xlabel('City');ylabel('Scale');C=cophenet(Z,D);T=cluster(Z,3);matlab聚类算法实例(matlab聚类分析的应用案例)  第10张

(12)最长距离法&欧式距离

S=['福冈';'合肥';'武汉';'长沙';'桂林';'温州';'成都'];X=[16.214922000-8.26.2; 15.79702209-20.61.9; 16.312602085-17.32.8; 17.214221726-9.54.6; 18.818741709-4.98.0; 17.916981848-4.57.5; 16.39761239-4.65.6];D=pdist(X,'euclid');M=squareform(D);Z=linkage(D,'complete');[HtPerm]=dendrogram(Z,'labels',S);xlabel('City');ylabel('Scale');C=cophenet(Z,D);T=cluster(Z,3);matlab聚类算法实例(matlab聚类分析的应用案例)  第11张

(13)平均法&相似系数

S=['福冈';'合肥';'武汉';'长沙';'桂林';'温州';'成都'];X=[16.214922000-8.26.2; 15.79702209-20.61.9; 16.312602085-17.32.8; 17.214221726-9.54.6; 18.818741709-4.98.0; 17.916981848-4.57.5; 16.39761239-4.65.6];D=pdist(X,'cosine');M=squareform(D);Z=linkage(D,'centroid');T=dendrogram(Z,'labels',S);xlabel('City');ylabel('Scale');C=cophenet(Z,D);T=cluster(Z,3);matlab聚类算法实例(matlab聚类分析的应用案例)  第12张

(14)最短距离法&基于主成分的标准欧式距离

S=['福冈';'合肥';'武汉';'长沙';'桂林';'温州';'成都'];X=[16.214922000-8.26.2; 15.79702209-20.61.9; 16.312602085-17.32.8; 17.214221726-9.54.6; 18.818741709-4.98.0; 17.916981848-4.57.5; 16.39761239-4.65.6];[E,score,eigen,T]=princomp(X);PCA=[score(:,1),score(:,2)];D=pdist(PCA,'seuclid');M=squareform(D);Z=linkage(D,'single');H=dendrogram(Z,'labels',S);xlabel('City');ylabel('Scale');C=cophenet(Z,D);T=cluster(Z,3);matlab聚类算法实例(matlab聚类分析的应用案例)  第13张

发表评论