R语言Kmeans聚类实例

随机数生成40对点,每一个点2维,聚成4类,并且画出聚类图形!

Kmeans算法原理
K均值法先指定聚类数,目标是使每个数据到数据点所属聚类中心的总距离的平方和最小,规定聚类中心点时则是以该类数据点的平均值作为聚类中心。
步骤

  1. 随机选取K个数据点作为(起始的)聚类中心点;
  2. 按照距离最近原则分配数据点到对应类;
  3. 计算每类的数据点平均值,找到新的聚类中心;
  4. 计算数据点到聚类中心的总距离;
  5. 如果与上一次相比总距离下降,聚类中心替换;
  6. 直到总距离不再下降或者达到指定计算次数。
解决过程
  1. 随机生成两个长度为40的向量,并将其转化为矩阵,则为2*40的矩阵
  2. 执行Kmeans分类
  3. 查看分类之后的信息
  4. 作图
实现代码
n<-runif(40,10,100)
n2<-runif(40,100,200)
c3<-cbind(n,n2)
c3
plot(n,n2)
#在一个矩阵上执行K均值聚类
kc<-kmeans(c3,4)
#查看信息
summary(kc)
#查看聚类的结果,也就是每个点聚到了那个类
kc$cluster
#查看中心点(聚类点)
kc$centers
#导入快速画图包
library(ggplot2)
#画图
qplot(n,n2,colour=kc$cluster)

结果展示


                
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值