基于密度的聚类算法与Kmeans算法的R语言脚本

来源:互联网 发布:微商软件工作室 编辑:程序博客网 时间:2024/06/04 18:16

使用R语言实现聚类算法

本次仅展示简单的使用R语言实现kmeans算法和基于密度的算法:

首先是基于密度的R语言脚本:

>library(cluster)>library(fpc)>#如果提示没有fpc包,则使用install.packages('fpc')按照,注意单引号。> data <- read.csv('train.csv')> x <- data[,c(2,3,4,5)]> #读取data数据的第2,3,4,5共4列作为维度数据,索引从1开始> ds <- dbscan(x,0.02,6)> #其中2是距离半径,6是每次计算囊括的点的数量,具体可以根据数据表现进行调整,这也是基于密度聚类算法的局限之一> par(bg="grey")> plot(ds, x)

其次是基于Kmeans算法的R语言脚本:

>library(cluster)> data <- read.csv('train.csv')> x <- data[,c(2,3,4,5)]> res <- kmeans(x,centers=3)> par(bg="grey")> plot(x,col=res$cluster)> #结果以不同颜色的标记不同的分类类别

以上是简单的执行脚本,不涉及复杂的参数设置,比如在Kmeans算法中还可以设置收敛值,迭代次数等,更多内容随着学习的深入再逐步添加,简单的算法已经足够应付很多需求了。

原创粉丝点击