最新のリリースでは,このページがまだ翻訳されていません。このページの最新版は英语でご覧になれます。

リンケージによる凝集型クラスターの构筑

说明

Ť=簇(ž'隔断'Cは,凝集型の阶层クラスターツリーžからクラスターを定义します。入力žは,入力データ行列Xに対する关数连锁の出力です。は,ツリー内のノードの不整合係数(または不符の値)のしきい値としてCを使用して,žをクラスターに分割します。出力Ťには,各観測値(Xの行)のクラスター割り当てが格纳されます。

Ť=簇(ž'隔断'C'深度'dは,各ノードで深さdまで调べることにより,不符の値を评価します。

Ť=簇(ž'隔断'C'标准'标准は,クラスターを定義するための标准として“不一致”(既定)または“距离”を使用します。がクラスターを定义するには,标准C未満でなければなりません。

Ť=簇(ž“MaxClust”ñは,クラスターを定義する基準として“距离”を使用して,最大ñ个のクラスターを定义します。

すべて折りたたむ

各ノードで深さ4まで不整合値を評価することにより,無作為に生成したデータに対して凝集型クラスタリングを実行します。

标本データを无作为に生成します。

rng (“默认”);%的再现性2 X = [(randn(20日)* 0.75)+ 1;2 (randn(20日)* 0.25)1);

データの散布図を作成します。

散射(X(:,1),X(:,2));标题(“随机产生的数据”);

病房连结法を使用して阶层クラスターツリーを作成します。

Z =键(X,“病房”);

データの系统树プロットを作成します。

系统树图(Z)

散布図と系统树プロットでは,データに2つのクラスターがあるように见えます。

不整合系数のしきい値として3を使用し,各ノードで深さ4まで调べることにより,データをクラスター化します。生成されたクラスターをプロットします。

T =簇(Z,'隔断'3,'深度',4);gscatter(X(:,1),X(:,2),T)

は,データ内のクラスターを2つ识别します。

クラスターを定义する基准として“距离”を使用することにより,fisheririsデータセットに対して凝集型クラスタリングを実行します。データのクラスター割り当てを可视化します。

fisheririsデータセットを読み込みます。

加载fisheriris

种をグループ化変数として使用して,データの2次元散布図を可视化します0.3つの异なる种についてマーカーの色と记号を指定します。

gscatter(量(:1)量(:,2),物种,“rgb”'做*')标题(“费舍尔的虹膜数据的实际集群”

'平均'法と“切比雪夫”尺度を使用して階層クラスターツリーを作成します。

Z =连杆(量,'平均'“切比雪夫”);

“距离”基准のしきい値として1.5を使用して,データをクラスター化します。

T =簇(Z,'隔断',1.5%,'标准'“距离”
T =150×12 2 2 2 2 2 2 2 2 2⋮

Ťには,クラスター割り当てに対応する番号が格納されます。が识别したクラス数を求めます。

长度(独特(T))
ANS = 3

は,指定された値の隔断および标准に対して3つのクラスを識別します。

Ťをグループ化変数として使用して,クラスター化の结果の2次元散布図を可视化します0.3つの异なるクラスについてマーカーの色と记号を指定します。

gscatter(MEAS(:,1),MEAS(:,2),T,“rgb”'做*')标题(“费舍尔的虹膜数据的聚类分配”

クラスター化により,setosaクラス(クラス2)は独立したクラスターに属するように正しく识别されますが,云芝クラス(クラス1)と锦葵クラス(クラス3)の区别は不十分です。散布図におけるクラスのラベル付けにはŤに格纳されている番号が使用されることに注意してください。

fisheririsデータセットで最大3つのクラスターを求め,花のクラスター割り当てを既知の分类と比较します。

标本データを読み込みます。

加载fisheriris

'平均'法と“切比雪夫”尺度を使用して階層クラスターツリーを作成します。

Z =连杆(量,'平均'“切比雪夫”);

データ内のクラスターを最大3つ求めます。

T =簇(Z,'maxclust',3);

žの系統樹図を作成します。3つのクラスターを表示するため,3番目から最後までのリンクと2番目から最後までのリンクの中間点にカットオフを設定して'ColorThreshold'を使用します。

截留值=中间值([Z(端2,3)Z(最终1,3)]);树状图(Z,'ColorThreshold',隔断)

3つのクラスターがどのようにして1つに結合されるかを調べるため,žの最後の2行を表示します。连锁は,293番目のクラスター(青)を297番目のクラスター(赤)と结合し,1.7583というリンクで298番目のクラスターを形成します。そして,连锁は296番目のクラスター(绿)を298番目のクラスターと结合します。

lastTwo = Z(最终1:端,:)
lastTwo =2×3293.0000 297.0000 1.7583 296.0000 298.0000 3.4445

クラスターの割り当てが3つの种类に対応していることを确认します。たとえば,クラスターの1つには,2-番目の种类の花が50本3番目の種類の花が40本含まれています。

交叉(T,物种)
ANS =3×30 0 10 0 50 40 50 0 0

20000件の観測値をもつ標本データを無作為に生成します。

rng (“默认”%的再现性X =兰德(20000 3);

病房連結法を使用して階層クラスターツリーを作成します。このケースでは,既定により関数clusterdata'SaveMemory'オプションが'上'に设定されます通常。は,Xの次元数と使用可能メモリに基づいて'SaveMemory'に最适な値を指定します。

Z =键(X,“病房”);

データを最大4つのグループにクラスター化し,結果をプロットします。

C =簇(Z,'Maxclust',4);scatter3(X(:,1),X(:,2),X(:,3),10,c)中

は,データ内のグループを4つ识别します。

入力引数

すべて折りたたむ

关数连锁の出力である,凝集型の階層クラスターツリー。数値行列を指定します。行数(観測値の個数)がmである入力データ行列Xの場合,连锁(m - 1)行3列の行列žを返します。连锁がクラスターツリーを作成する方法の説明については,žを参照してください。

例:Z =键(X)Xは入力データ行列です。

データ型:|

クラスターを定义するためのしきい値。正のスカラー,または正のスカラーのベクトルを指定します。は,阶层クラスターツリーでクラスターを定义するための标准に応じて,ノードの高さまたは不整合係数のしきい値としてCを使用します。

  • クラスターを定义する基准が“距离”である場合,あるノードの高さがC未満であれば,はそのノードの位置以下にあるすべてのリーフをクラスターにグループ化します。

  • クラスターを定义する基准が“不一致”である場合,あるノードおよびそのすべてのサブノードで不符の値がC未満であれば,はこれらのノードをクラスターにグループ化します。は,クラスターツリーžのルートから出発して,不符の値がしきい値C未満であり,サブノード(子孙)の不整合系数がC未満であるノードに到达するまでツリー内を下方向に移动します。そして,はそのノードの位置以下にあるすべてのリーフをクラスター(ノード自体がリーフである场合はシングルトン)にグループ化します。は,すべてのリーフノードがクラスターに含まれるようになるまで,ツリー内のすべての分岐を探索します。

例:集群(Z,“截止”,0.5)

データ型:|

不整合値を计算する深さ。数値スカラーを指定します。は,各ノードを深さdまで调べることにより,不整合値を评価します。

例:集群(Z,“截止”,0.5,“深度”,3)

データ型:|

クラスターを定义するための基准。“不一致”または“距离”を指定します。

クラスターを定义する基准が“距离”である場合,あるノードの高さがC未満であれば,はそのノードの位置以下にあるすべてのリーフをクラスター(ノード自体がリーフである場合はシングルトン)にグループ化します。ツリー内のノードの高さは,そのノードで結合されている2つのサブノードの間の距離を表します。“距离”を指定した场合,クラスターはž系统树图プロットの水平スライスに対応します。

クラスターを定义する基准が“不一致”である場合,あるノードおよびそのすべてのサブノードの不整合係数(不符の値)がC未満であれば,はそのノードおよびサブノードをクラスターにグループ化します。“不一致”という指定は,集群(Z,“截止”,C)と等価です。

例:簇(Z, '截止',0.5, '标准', '距离')

データ型:字符|字符串

形成するクラスターの最大数。正の整数,または正の整数のベクトルを指定します。は,クラスターを定義する基準として“距离”を使用して,最大ñ个のクラスターを构筑します。ツリー内の各ノードの高さは,そのノードで结合されている2つのサブノードの间の距离を表します。は,ツリーを水平に切り取るとñ个以下のクラスターが残る,最小の高さを求めます。详细については,任意のクラスターの指定を参照してください。

例:集群(Z, MaxClust, 5)

データ型:|

出力引数

すべて折りたたむ

クラスター割り当て,数値ベクトルまたは行列として返されます。(m - 1)行3列の階層クラスターツリーž(入力Xに対する连锁の出力)の场合,Xのm個の行(観測値)に対するクラスター割り当てがŤに格纳されます。

Ťのサイズは,対応するCまたはñのサイズによって异なります。

  • Cが正のスカラーである场合,Ťは长さ米のベクトルになります。

  • ñが正の整数である场合,Ťは长さ米のベクトルになります。

  • Cが正のスカラーによる长さ升のベクトルである场合,Ťは米行升列の行列になり,各列がCの各値に対応します。

  • ñが正の整数による長さlのベクトルである場合,Ťは米行升列の行列になり,各列がñの各値に対応します。

代替机能

入力データ行列Xがある場合,clusterdataを使用すると,凝集型クラスタリングを実行して,X内の各観测値(行)のクラスターインデックスを取得できます。关数clusterdataは必要な手順をすべて実行するので,関数pdist连锁およびを個別に実行する必要はありません。

R2006aより前に導入