聚类原理
层次聚类(Hierarchical Clustering)通过计算各类别中数据之间的相似度,最终创建一棵有层次的嵌套聚类树。起核心思想是基于各"簇"之间的相似度,在不同层次上分析数据,得到最终的树形聚类结构。
算法流程
算法的基本步骤为
1.计算数据集的距离矩阵。
2.先假设每个样本点为一个簇类。
3.迭代:合并距离最进的两个簇类,并且更新距离矩阵。
4.当簇类或者迭代次数满足终止条件时,算法结束。
代码实现
数据集的生成和计算距离矩阵,这路计算距离采用欧式距离:

进入迭代循环聚类:

在迭代循环中的第一个函数目的是寻找最近最近的两个个体进行聚类,同时记录对应个体的编号(行号):