📜  r中的层次聚类图 (1)

📅  最后修改于: 2023-12-03 15:04:58.587000             🧑  作者: Mango

R中的层次聚类图

层次聚类是一种常用的聚类分析方法,主要用于将数据集中的样本进行分组,使得同一组内个体之间的相似度尽可能大,不同组之间的相似度尽可能小。在R语言中,可以通过hclust()函数绘制层次聚类图。

绘制层次聚类图的步骤
步骤1: 准备数据集

首先,需要准备一个数据集,它应该包含每个个体的变量值。在这个数据集中,行应该对应于每个个体,列应该对应于每个变量。

步骤2: 计算距离矩阵

使用dist()函数计算距离矩阵,这个函数将通过你选择的度量计算每个个体之间的距离。

步骤3: 进行聚类

使用hclust()函数对距离矩阵进行聚类并生成树状图。

步骤4: 绘制层次聚类图

使用plot()函数将生成的树状图绘制出来,并在图形上显示聚类结果。

示例代码

以下代码演示了如何使用iris数据集进行层次聚类,并绘制出具有三个聚类群的层次聚类图:

# 加载数据集
data(iris)

# 删除species列
iris_data <- iris[, -5]

# 计算距离矩阵
iris_dist <- dist(iris_data)

# 进行聚类
iris_hclust <- hclust(iris_dist, method = "ward.D2")

# 绘制层次聚类图
plot(iris_hclust, cex = 0.6, hang = -1, main = "Iris Dataset")
rect.hclust(iris_hclust, k = 3, border = 2:4)

该代码将生成一个层次聚类图,其中包含叶子节点表示数据集的各行,节点的高度表示聚类的距离,不同颜色的矩形表示聚类群。