【Rで多変量解析#6】クラスター分析(階層型クラスタリング)

記事の目的

クラスター分析(ウォード法)をRを使用して実装していきます。データの作成から実装するので、コピペで再現することが可能です。

 

目次

  1. ライブラリ
  2. データの作成
  3. データの可視化
  4. クラスター分析
  5. 結果の可視化

 

1 ライブラリ

library(dplyr)
library(ggplot2)

 

2 データの作成

set.seed(1)
英語 <- c(rnorm(5, 50, 10), rnorm(5, 70, 10)) %>% round()
数学 <- c(rnorm(5, 50, 10), rnorm(5, 30, 10)) %>% round()
data <- data.frame(英語, 数学)
data %>% head()

 

3 データの可視化

data %>%
  ggplot()+
  geom_point(aes(英語, 数学)) +
  theme_classic(base_family = "HiraKakuPro-W3")+
  theme(text=element_text(size=30))+
  labs(title="データプロット")

 

4 クラスター分析

D <- dist(data, method = "euclidean")
cls <- hclust(D, method = "ward.D")
plot(as.dendrogram(cls))

 

5 結果の可視化

data$cluster <- factor(cutree(cls, k=2))
data %>%
  ggplot()+
  geom_point(aes(英語, 数学, col=cluster)) +
  theme_classic(base_family = "HiraKakuPro-W3")+
  theme(text=element_text(size=30))+
  labs(title="データプロット")