Quantcast
Channel: ウィリアムのいたずらの、まちあるき、たべあるき
Viewing all articles
Browse latest Browse all 7267

いくつにグループ分けしたらいいか分からないとき、グループ分けし、その根拠を探る方法-(1)

$
0
0
これ、書いたっけ?

商品などを、いくつかにグループ分けしたい。
ただし、いくつにグループ分けしたらいいか分からない。
また、グループ分け後、どういう根拠でグループ分けしたかも知りたい

というとき、どうするか?



■なにが、問題なのか?

商品などをグループ化するには、k-meansに代表される、
非階層型クラスタリングを用いる。
 しかし、非階層型クラスタリングを用いると、
   いくつに分けるか、あらかじめ決めないといけない
   クラスタリングしても、そのように別れる根拠はわからない
 という2つの問題がある。

■ときかた
 問題に対し、
   ・はじめに階層型クラスタリングを行い、図から
    いくつに分けるか判断する
   ・別れる根拠(=分類した理由)を示してくれる決定木を使う
 ということを行う。

手順としては
・データを用意する
・階層型クラスタリングを行い、何個に分けるか決める
・決めた数で非階層型クラスタリングを行う
・データの最後に、どのクラスタか、クラスタ番号を入れる
・決定木を行う(独立変数はクラスタ変数(bunrui))

■Rだと

#商品データ作成:shodata.csv library(psych) mydata<-read.csv("shodata.csv",header=T,sep=",") mydata #階層型クラスタに分ける kyori <- dist(mydata, method = "euclidean") hcl <- hclust(kyori) plot(hcl) #ここで、図が表示される #今回は5個に分けると決めた #非階層型クラスタに分ける kmeans(mydata,5) #どうしてこのように分類されるか、決定木にかける library(rpart) #shobun1.csvはshohin.csvの各レコード末尾に、クラスタ番号(bunrui)を付けたもの data<-read.csv("shobun1.csv",header=T,sep=",") result<-rpart(bunrui~.,data=data,control=rpart.control(minsplit=5, cp=0.01)) par(xpd=T) plot(result) text(result)

Viewing all articles
Browse latest Browse all 7267

Trending Articles