科学の箱

科学・IT・登山の話題

R 機械学習

クラスタリング

投稿日:

Rによるクラスタ分析の実行

県別の持家率と自家用車普及率からクラスタ分析を実行し似た県を探してみる。。

データソース

  • 持家と自家用車普及率のデータは下記から取得する
  • 持家普及率のデータはこちらから取得した。
  • 自動車普及率は同じサイトのこちらからである。

csv

データをcsvにまとめる。

pref,home,car
愛知県,.5784,.513
愛媛県,.6561,.474
茨城県,.7073,.66
岡山県,.6653,.644
沖縄県,.5016,.417
岩手県,.7194,.603
岐阜県,.7386,.673

データ読み込み

csvデータをRに読み込む

> data <- read.csv("data.csv", row.names=1)
> head(data)
         home   car
愛知県 0.5784 0.513
愛媛県 0.6561 0.474
茨城県 0.7073 0.660
岡山県 0.6653 0.644
沖縄県 0.5016 0.417
岩手県 0.7194 0.603

Rで読み込む際に県データを行名にする(row.names=1)。これによりクラスタリング実行時に各データが県で表示される。実施しないと行番号になるために識別が難しい。

距離計算

各要素の距離をdist()でもとめる。

> data.d <- dist(data)
 警告メッセージ: 
In dist(data) :  強制変換により NA が生成されました 
> data.d
             1           2           3           4           5           6
2  0.106477392                                                            
3  0.239450026 0.236275602                                                
4  0.192532893 0.208511295 0.055045436                                    
5  0.150570117 0.201690047 0.389925935 0.342768194                        
6  0.204869471 0.175988167 0.071366063 0.083136725 0.350783780            
7  0.277301388 0.263838729 0.041509457 0.096544472 0.427267481 0.088898594
8  0.167743375 0.182549486 0.073548861 0.026526119 0.318260648 0.076762882
9  0.040435319 0.066066330 0.231480021 0.190816666 0.164813030 0.186383516
10 0.331404941 0.287860800 0.523893348 0.494951149 0.248554451 0.460474576
11 0.101566431 0.112600688 0.140496388 0.100535740 0.250692920 0.104505694
12 0.298463465 0.307669002 0.073485611 0.106171253 0.448327157 0.144097675
13 0.111718016 0.078471269 0.307412524 0.272627328 0.135272004 0.251795780
14 0.206386773 0.189205801 0.050280364 0.062086351 0.354932754 0.023108440
15 0.109499041 0.051042482 0.185241397 0.159246272 0.235684450 0.125997381
16 0.222379271 0.224989633 0.019219131 0.035838178 0.372947262 0.070447427
17 0.294935374 0.232734527 0.465298872 0.441169627 0.246720561 0.399092564
18 0.261973043 0.249639059 0.028109429 0.082823547 0.411940329 0.075808146
19 0.318428862 0.306533090 0.079299275 0.131967326 0.468741784 0.131077229

クラスタ分析の実行

クラスタ計算をする。

> data.hc <- hclust(data.d)

デンドログラム

デンドログラムを描く

> plot(data.hc)


clustering

メタ情報

inarticle



メタ情報

inarticle



-R, 機械学習
-

執筆者:


comment

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

関連記事

no image

データ取り込み後に確認すること

# tidyデータの原則 # 1カラム = 1変数 # 1行 = 1観察 # 1テーブル = 1 unique key # foreign key to link # テーブル全体で見ること # カラ …

no image

一対比較法によるリーグ戦の分析

一対比較法を利用すると2者の比較から全体の重要度や実力を数字で表現できる。 一対比較法を使った分析の手順は以下のようにすすめる。 データを取得する。 一対比較法のデータは複数の項目から2者を選び比較し …

no image

分散分析のcase study

分散分析についてcase studyをしてみる。目的はRで分散分析を実行する際の手順を明確にすること、およびそれに付随するRの関数を理解することである。 目標として以下をあげておく テストデータを含め …

no image

Rでのラインの表示

Rでラインを引くために関数がいくつか用意されている。 abline() 画像全体に線を引く segments() 始点と終点を指定してその間に線を引く points() “点” …

no image

Rによるやさしい統計学/3-2つの変数の記述統計

散布図を作成 Rで散布図を作成する。データはrunifで10個ずつ作成する。データのレンジは50~100. x_test <- as.integer(runif(10, 50, 100)) y_ …

2014年1月
月 火 水 木 金 土 日
« 12月   2月 »
 12345
6789101112
13141516171819
20212223242526
2728293031  

side bar top



アーカイブ

カテゴリー