欢迎光临散文网 会员登陆 & 注册

简单好用!经典机器学习聚类算法——K-means

2023-10-16 09:28 作者:小云爱生信  | 我要投稿

尔云间  一个专门做科研额团队

原创 小果 生信果 

欢迎点赞+收藏+关注

生信人R语言学习必备

立刻拥有一个Rstudio账号

开启升级模式吧

(56线程,256G内存,个人存储1T)

最近小果看了很多文章,发现了一些高分文章的共有技术点——聚类

于是小果绝对带给大家一个经典聚类算法的代码案例教学,希望让大家都能写出高分文章,也让小云沾沾喜气!

K-Means聚类是一种无监督学习算法,用于将数据点分组成k个簇。该算法将数据点分配到距离它们最近的簇中,其中距离通常是欧氏距离。

然后,通过计算每个簇的质心(簇中所有数据点的平均值),来确定每个簇的中心点。这些步骤反复进行,直到质心不再改变或达到最大迭代次数为止。让我们直接进入主题!上代码!

1、下载所需要的R包

2、加载所需R包

3、示例数据

该数据为R语言内置数据集,包含美国每个州每10万因不同犯罪类型而被捕的人数,以及每个州居住在城市地区的人口百分比(UrbanPop)

4、选择合适的聚类数量

(1)利用手肘法确认最佳聚类数量(手肘法:通常我们创建这类图形寻找某个K类对应的平方和值开始弯曲或趋于平缓的肘形。这通常是最理想的聚类数量。)

fviz_nbclust(df,kmeans,method=”wss”)


#根据上图可以看出k=4时出现肘性,所以后续实验聚类数量为4

(2)差距统计确认最佳聚类数量

#根据上图可以看出k=4时,差距统计最大,与手肘法结果相同。

5、执行kmeans聚类

 

 

结果显示分类结果为4个簇,分别包含16、13、13和8个州,以四种颜色圈出对应的区域并展示。

以上就是k-means聚类的实验流程,很简单吧,加到文章里又是点睛的一笔,快动动小手试试吧!

(小果新开发的零代码云生信分析工具平台包含超多零代码小工具,上传数据一键出图,感兴趣的小伙伴欢迎来参观哟,网址:http://www.biocloudservice.com/home.html)

“生信果”,生信入门、R语言、生信图解读与绘制、软件操作、代码复现、生信硬核知识技能、服务器、生物信息学的教程,以及基于R的分析和可视化等原创内容,一起见证小白和大佬的成长。

简单好用!经典机器学习聚类算法——K-means的评论 (共 条)

分享到微博请遵守国家法律