いいもんつくったー

いろんなクラスタリング手法を試せるツール作った

クラスタリングと言ってもいろいろな手法がありますが、それぞれ特徴があります。例えば最長距離法はクラスタの大きさが揃いやすいとか、群平均法は外れ値に強いとか。それぞれの特徴については下記が詳しいです。
qiita.com
だがしかし、どのデータでどの手法だとどういう結果になるのか直感的に試してみたくてたまらなくなるのが右脳人間。気軽に試して遊べるツールが欲しい。。。

解決方法

ということで今回は気軽にいろんなクラスタリング手法が試せるツールを作りました。
対応しているクラスタリング手法は下記です。

  • 最近隣法(Single)
  • 最遠隣法(Complete)
  • 群平均法(Average)
  • 重心法(Centroid)
  • メディアン法(Median)
  • ウォード法(ward)
  • McQuitty法(mcquitty)
  • k-means法(k-means)

使い方はこんな感じです。

  1. データ(csv)を読み込む
  2. クラスタリングに用いるパラメータ、クラスタ数、手法を選ぶ
  3. 散布図とデンドログラムで結果確認(※k-means法に関しては非階層なのでデンドログラムは出ません)

世の中には便利なツールがありまして、下記のURLで手書きで群になりそうなダミーデータを生成&出力して、このツールでクラスタリングを試してみるという使い方も面白いと思います。
drawdata.xyz

実行方法

普段Rを使わない方はちょっとだけ前準備が必要です。

  1. Rstudioをインストール
  2. 下記おまじないをRstudioのコンソールに打ち込んで、ライブラリをインストール
install.packages("shiny")
install.packages("DT")
install.packages("ggplot2")
install.packages("cluster")
install.packages("ggdendro")

3.下記おまじないをRstudioのコンソールに打ち込んで、ツールの実行

library(shiny)
runUrl("https://github.com/Ry87/ClusteringTool/archive/master.tar.gz")

自由に使ってみてください~!Enjoy!