<<目次へ


Rでクラスター分析



 Rにはhclustというクラスター分析を行うための関数が用意されています。またデンドログラム(樹形図)を描くためのplclustという関数もありますが,plotを使用しても問題ありません。

身長(cm) 体重(kg)
No.1 156 80
No.2 162 77
No.3 150 76
No.4 175 70
No.5 170 65
No.6 171 67
No.7 180 56
No.8 178 52
No.9 181 60

-使用例

 methodには分類方法を指定します(下表を参照)。

ward ウォード法
single 最短距離法
complete 最長距離法
average 群平均法
mcquitty MaQuitty法
median メディアン法
centroid 重心法


> data
      [,1] [,2]
 [1,]  156   80
 [2,]  162   77
 [3,]  150   76
 [4,]  175   70
 [5,]  170   65
 [6,]  171   67
 [7,]  180   56
 [8,]  178   52
 [9,]  181   60
> result<-hclust(dist(data),method="single")
> plot(result)


 また次のような関数を定義しておけば,データ行列を用意するだけでデンドログラムを描くことができる。分類方法を変えたければ,method="single"の部分を変えればよい。

myclust<-function(dat)
{
        d<-dist(dat)
        res<-hclust(d,method="single")
        windows()
        plot(res,ylab="距離",xlab="")
}