本文中代码及数据源请访问我的github:https://github.com/HelloMrChen
一、基本解释(算法思想、名词解释)
算法:
1、在总体中随机选择k个值作为初始质心。
2、计算每个样本点到每个质心的距离(一般为欧式距离),将每个点指派到最近的质心点,形成K个聚类。
3、重新这个簇的样本点的平均值,作为簇的新质心。
4、重复2-3直至质心不再发生变化,或者只发生很微小的变化。
名词解释:
关于距离的定义请参考:数学算法中的各种距离
二、数学推导
三、R中自带包及案例介绍
在R语言中,只需要调用knn包中的kmeans函数,主要参数有数据集以及要分的类别数量。
下面是调用Kmeans函数对经典数据集iris进行聚类的代码
#R语言代码
# 用R自带的Kmeans包实现Kmeans聚类
#读取iris 数据集
## 设置路径为AlgorithmPractise-R,读取当前工作目录子文件夹格式