今天還是比較開心的,因為學(xué)到了如何聚類分析猩系,而且還沒有出錯,主要是比較簡單啦中燥!
聚類函數(shù)clusterdata
數(shù)據(jù)聚類函數(shù)clusterdata,優(yōu)點是概括性寇甸,功能性強大,使用方便,缺點是采用默認的歐式距離拿霉,方法是最短距離法——選擇余地少吟秩;輸出的結(jié)果簡單。
語法格式 T=clusterdata(X,cutoff)
X表示聚類n*m原始數(shù)據(jù)矩陣绽淘,n行表示n個樣品涵防,m列表示m個變量。
Cutoff表示聚類譜系圖上的截斷參數(shù)收恢,數(shù)值范圍限定在(0武学,1]之間,當(dāng)接近于1時伦意,則輸出的類別越少火窒。
子程序pdist
pdist用于計算成對距離
D=pdist(X)
D=pdist(X,'metric')
D=pdist(X,'minkowski',r)
metric表示距離度量方法選擇項
注意事項:1 距離測度對于字母大小寫沒有特別的規(guī)定 ;2.距離的表示可以全稱驮肉,也可以縮寫
距離列陣函數(shù)squareform
功能將pdist計算的兩兩距離排列成方陣
squareform(D)
層次聚類函數(shù)linkage
功能基于距離方陣M的結(jié)果采用某種方法進行分類
Z=linkage(M)
Z=linkage(M,'method')
樹形圖函數(shù)dendrogram
1.圖形的局部顯示
H=dendrogram(Z,n)
2.圖形顏色的局部改變
H=dendrogram(Z,'colorthreshold',T)
T 屬于(0熏矿,Z)
T值太小或者太大,譜系顯示的是純一的顏色
缺省參數(shù)的語法格式H=dendrogram(Z离钝,‘color’票编,‘default’)
3.圖形方向的調(diào)整
H=dendrogram(Z,‘orientation’卵渴,orient)
top:自上而下 慧域;bottom:自下而上
left:自左而右; right:自右而左
4.樣品標簽的添加
S=['xx'; ……];
H=denddrogram(Z,'Labels',S);
分類定義函數(shù)
用于指定分類數(shù)目和結(jié)果
T=cluster(Z浪读,p)
%層次聚類分析
%最長距離法%歐式距離
X=[16.2 1492 2000 -8.2 6.2
15.7 970 2209 -20.6 1.9
16.3 1260 2085 -17.3 2.8
17.2 1422 1726 -9.5 4.6
18.8 1874 1709 -4.9 8.0
17.9 1698 1848 -4.5 7.5
16.3 976 1239 -4.6 5.6];
D=pdist(X,'euclid');%計算樣品之間的歐式距離
M=squareform(D);%排出距離矩陣
Z=linkage(D,'complete');%根據(jù)最長距離法聚類
H=dendrogram(Z);%畫出聚類譜系圖
xlabel('City');%譜系圖的橫軸標簽
ylabel('Scale');
C=cophenet(Z,D);
T=cluster(Z,3);
find函數(shù)
find(T==q)
%層次聚類分析
%最短距離法%歐式距離
X=[16.2 1492 2000 -8.2 6.2
15.7 970 2209 -20.6 1.9
16.3 1260 2085 -17.3 2.8
17.2 1422 1726 -9.5 4.6
18.8 1874 1709 -4.9 8.0
17.9 1698 1848 -4.5 7.5
16.3 976 1239 -4.6 5.6];
D=pdist(X,'euclid');%計算樣品之間的歐式距離
M=squareform(D);%排出距離矩陣
Z=linkage(D,'single');%根據(jù)最長距離法聚類
H=dendrogram(Z);%畫出聚類譜系圖
xlabel('City');%譜系圖的橫軸標簽
ylabel('Scale');
C=cophenet(Z,D);
T=cluster(Z,'cutoff',0.8);