[ DATT-A9D > データで遊ぶ > 新札幌バウム ]
PCゲーム「A列車で行こう9」で遊びながら学ぶ、Rのハローワールド。(最終更新:2024年9月12日)
▼最終的にこのような図を描きたい |
※以下の手順は続けて行ないます。途中で「R」を閉じてしまうと、最初からやり直しになります。やむを得ず中断するときは「作業スペース(現在の状態)を保存」しますが、これを常用してはなりません。あらかじめ考えておいた手順を一続きで実行するのが基本です。
※クラスタリングは乱数を使うアルゴリズムです。実行のたびに結果が異なることを理解しましょう。クラスターの番号は同じにはならず、このためプロットの色分けも実行のたびに変わります。
サンプルデータ | ネオン橋ブリヂM(x,y,z) |
---|---|
ネオン橋ブリヂM(256x256) |
「ベクトル円海山」のRスクリプトを実行します |
---|
「新札幌バウム」のRスクリプト(k=17) |
---|
# ベクトル円海山のRスクリプトを実行したあとに続けて実行します mykmakari17elv <- kmeans(myakari0elv, 17, nstart=50) clPairs(myakari0elv, cl=mykmakari17elv$cluster) # プロットされた図を右クリックしてコピーや保存をします mycmpakari0elv <- prcomp(myakari0elv, scale=TRUE) clPairs(mycmpakari0elv$x, cl=mykmakari17elv$cluster) # プロットされた図を右クリックしてコピーや保存をします mykmakari17elvc3 <- kmeans(mycmpakari0elv$x, 17, nstart=50) clPairs(myakari0elv, cl=mykmakari17elvc3$cluster) # プロットされた図を右クリックしてコピーや保存をします |
▲(左)単純なk-means(球の充填と近い)
(右)平地の微地形の等高線を反映した分割ができた
「新札幌バウム」のRスクリプト(k=17) |
---|
original <- mykmakari17elvc3$centers %*% t(mycmpakari0elv$rotation) original <- scale(original, center = FALSE, scale = 1 / mycmpakari0elv$scale) original <- scale(original, center = -mycmpakari0elv$center, scale = FALSE) myakaricenters17elvc3o <- as.table(original) write.table(myakaricenters17elvc3o, file="clipboard", sep="\t") # クラスターの重心のリストをコピー plot(myakari2d, type="n") text(myakaricenters17elvc3o) rect(0, 0, 256, -256, border = "red") # プロットされた図を右クリックしてコピーや保存をします clPairs(rbind(myakari0elv[c(1,2)], c(0,0)), cl=append(mykmakari17elvc3$cluster, c(18))) rect(0, 0, 256, -256, border = "red") # プロットされた図を右クリックしてコピーや保存をします |
統計数理研究所のミラーサイトから「R」を入手しよう 統計数理研究所とは |
ARXどん天レイン(40216) All Rights Reserved. ©2018-2024, tht.