k-means 聚类k 选择(轮廓系数)
(2015-10-14 17:52:34)| 标签: 轮廓系数个数参量 | 分类: r语言学习 | 
#####R聚类研究
irirs2<-iris
irirs2[,5]<-NULL
kmeans.result<-kmeans(irirs2,3)
K-means clustering with 3 clusters of sizes 50, 62, 38
Cluster means:
1     5.006000
   3.428000  
  1.462000  
 0.246000        
2     5.901613
   2.748387  
  4.393548  
 1.433871        
3     6.850000
   3.073684  
  5.742105  
 2.071053        
Clustering vector:
[49] 1 1 2 2 3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
3 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2
[97] 2 2 2 2 3 2 3 3 3 3 2 3 3 3 3 3 3 2 2 3 3 3 3 2 3 2 3 2 3
3 2 2 3 3 3 3 3 2 3 3 3 3 2 3 3 3 2 3
[145] 3 3 2 3 3 2
Within cluster sum of squares by cluster:
(between_SS / total_SS =  88.4 %) 
Available components:
[7] "size"    
    "iter"  
      "ifault"
            
kmeans.result<-kmeans(irirs2,2)
c( kmeans.result$totss, kmeans.result$withinss,
kmeans.result$tot.withinss,kmeans.result$betweenss)
results <- matrix(nrow=15, ncol=2,
dimnames=list(1:15,c("clusters","s
umsquares")))
利用轮廓系数判断K均值聚类的簇个数
2012-6-19 20:56| 发布者: 仙豆| 查看: 4129| 评论: 0|来自: 互联网
摘要: K均值聚类(K-means
clustering)计算简单,并且可以用于各种数据类型,但需要事先判断簇个数来作为输入参量,该参数的设置往往涉及到聚类效果。轮廓系数可以用来解决这个问题,轮廓系数(silhouette
coefficient)方 ...
K均值聚类(K-means
clustering)计算简单,并且可以用于各种数据类型,但需要事先判断簇个数来作为输入参量,该参数的设置往往涉及到聚类效果。
轮廓系数可以用来解决这个问题,轮廓系数(silhouette
coefficient)方法结合了凝聚度和分离度,可以以此来判断聚类的优良性,其值在-1到+1之间取值,值越大表示聚类效果越好。
依据这个原理,我们可以尝试用多个簇参量,反复计算在每个簇个数条件下的轮廓系数,当轮廓系数取最大时,其相应的簇个数是最好的。
在R语言中package fpc可以计算聚类后的一些评价指标,其中就包括了轮廓系数。
#首先加载软件包
library(fpc)
#利用著名的iris数据集
data=iris[,1:4]
#设簇个数在2到5之间取值
x=c()
y=c()
for (i in 2:5){
}
plot(y,x)
后一篇:r语言异常值处理
					
 加载中…
加载中…