29

メソッドを使用しplot(hclust(dist(x)))て、クラスターツリーマップを描画することができました。できます。それでも、樹形図ではなく、すべてのクラスターのリストを取得したいと思います。これは、大量のデータ(150Kノードなど)があり、プロットが乱雑になるためです。

言い換えると、a b cがクラスターである場合、d e f gがクラスターである場合、次のようなものを取得したいとします。

1 a,b,c
2 d,e,f,g

これは、私が「出力」として取得したいものとは正確に一致しないことに注意してください。これは単なる例です。ツリープロットの代わりにクラスターのリストを取得できるようにしたいだけです。これは、ベクトル、行列、または要素が属するグループを示す単純な数値である可能性があります。

これはどのように可能ですか?

4

2 に答える 2

47

R で利用可能なデータセットを使用して、ツリーを必要な数の部分に分割する方法を示します。結果はテーブルです。

hclust オブジェクトを構築します。

hc <- hclust(dist(USArrests), "ave")
#plot(hc)

木を好きなだけ枝に切ることができます。次のトリックでは、ツリーを 2 つのグループに分けます。パラメータでカット数を設定しkます。より便利な?cutreeパラメータの使用を参照してください ( を参照)。hcutree(hc, k = 2) == cutree(hc, h = 110)

cutree(hc, k = 2)
       Alabama         Alaska        Arizona       Arkansas     California 
             1              1              1              2              1 
      Colorado    Connecticut       Delaware        Florida        Georgia 
             2              2              1              1              2 
        Hawaii          Idaho       Illinois        Indiana           Iowa 
             2              2              1              2              2 
        Kansas       Kentucky      Louisiana          Maine       Maryland 
             2              2              1              2              1 
 Massachusetts       Michigan      Minnesota    Mississippi       Missouri 
             2              1              2              1              2 
       Montana       Nebraska         Nevada  New Hampshire     New Jersey 
             2              2              1              2              2 
    New Mexico       New York North Carolina   North Dakota           Ohio 
             1              1              1              2              2 
      Oklahoma         Oregon   Pennsylvania   Rhode Island South Carolina 
             2              2              2              2              1 
  South Dakota      Tennessee          Texas           Utah        Vermont 
             2              2              2              2              2 
      Virginia     Washington  West Virginia      Wisconsin        Wyoming 
             2              2              2              2              2
于 2011-06-29T09:36:04.733 に答える