[R] ATNDのイベントをMDSで可視化してみた
ATNDに、イベント検索APIというのがあったので、2010年に行われたイベント情報を取ってきて、MDSで可視化してみた。
データの取得
以下の条件で取ってきた
- 2010に行われたイベント(月に100件まで)
- そのイベントに参加したユーザIDリスト(100人まで)
イベント名で描画
参加ユーザを特徴量として、距離行列を作成して二次元空間に配置する。
とりあえず、イベント名で描画。
atnd.events <- read.csv("./atnd_event.csv",encoding="utf8") atnd.events.dist <- dist(atnd.events[,-1]) atnd.events.cmd <- cmdscale(atnd.events.dist) atnd.events.lab <- as.character(atnd.events[,1]) par(family="Osaka") plot(atnd.events.cmd, type="n") text(atnd.events.cmd,labels=atnd.events.lab)
かなり右下に偏った結果になった。
左下きれちゃってるけど、「DeNA TechnologySeminar」とか「Python-Hack-a-thon」、右上が「SibuyaPerlMongersテクニカル〜」とか、「WDEex-Vol10『Web〜」とかが、他のイベントとちょっと違った層が参加している、または、規模が違うのどちらかだと思われる。名前からして、後者かな。
数字で描画
このままでは見にくいので数字で描画し直す
plot(atnd.events.cmd, type="n") text(atnd.events.cmd,labels=as.character(c(1:nrow(atnd.events))))
ざーと、眺めて、自分に関係ありそうなものだけ色を変えてみた
... [195] "R勉強会@東京" [196] "データマイニング+WEB勉強会@東京" ... [349] PRML復習レーン ... [398] "Hadoopソースコードリーディング" ... [718] "自然言語処理勉強会@東京" ... [888] Japan.R&Rユーザー会交流会2010 ...
atnd.events.col <- rep("green", nrow(atnd.events)) atnd.events.col[c(195,196,349,398,718,888)] <- "red" plot(atnd.events.cmd, type="n") text(atnd.events.cmd,labels=as.character(c(1:nrow(atnd.events))), col=atnd.events.col)
あれ、398(Hadoopソースコードリーディング)と、718(自然言語処理勉強会@東京)がかすかにしか確認出来ない
座標値を確認
> atnd.events.cmd[c(195,196,349,398,718,888),] atnd.events.cmd[c(195,196,349,398,718,888),] [,1] [,2] [1,] 0.04448011 -0.04397225 # TokyoR [2,] 0.04448011 -0.04397225 # TokyoWebmining [3,] 0.04448011 -0.04397225 # PRML復習レーン [4,] -0.52380728 0.34833522 # Hadoopソースコードリーディング [5,] -0.06795103 0.04443922 # TokyoNLP [6,] 0.04645629 -0.04770675 # JapanR
TokyoR、TokyoWebmining、PRML復習レーンが全く同じ位置に配置されてる。。。
全体で見ると、同じような人しか参加していない疑惑が・・・!!
まとめ
- MDSをつかってATNDのイベントを可視化してみました
- 結果、何となく、似たようなイベントが近く、そうでないようなものが遠くに配置出来たような気がします。
- 全然ちゃんと考察してないです