• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

R语言 - K均值聚类

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

> library(plyr)
> library(ggplot2)
> library(cluster)
> library(lattice)
> library(graphics)
> library(grid)
> library(gridExtra)
> library(cluster)
#加载cluster包中ruspini数据
>data(ruspini)
#将ruspini数据定义为data
>data <- ruspini
#将data数据可视化
>plot(data)
#生成15个数值型空矢量,定义为wss
>wss<-numeric(15)
#针对质心的个数k循环执行若干次k均值分析,其中k为1到15。对于每个k,选项nstart=25用于指定重复执行25次k均值聚类算法,每次以k个随机初始质心开始。与每个k均值分析对应的WSS值被存储在wss矢量中。
>for (k in 1:15) wss[k]<-sum(kmeans(data,centers = k,nstart = 25)$withinss)
#将wss矢量可视化,选择斜率变小的点作为k值(簇的个数) - 发现WSS曲线的“肘”
>plot(1:15,wss,type = "b",xlab = "x",ylab = "y")
#将数据data进行k均值聚类运算
>km = kmeans(data,4,nstart = 25)
#将km数据集内的centers数据转化为dataframe带入函数kmdf
>kmdf <- data.frame(km$centers)
#将kmdf内的点做图层
>p <- ggplot(data = NULL,mapping = aes(x=kmdf$x,y=kmdf$y))
#将kmdf内的点显示大小为9,颜色为"0000ff"
>p <- p+geom_point(aes(size = 9, color = "0000ff"))
#将data内的数据点做图层
>p <- p+geom_point(aes(x=data$x,y=data$y))

鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
叶梓老师开讲人工智能入门-R语言数据分析与数据挖掘-8发布时间:2022-07-18
下一篇:
关于R语言的绘图函数[转]发布时间:2022-07-18
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap