截止到目前,一个对R上面的聚类函数比较全的一个总结(附1)
****************************
K-means Clustering(其理论知识可见附2)
****************************
实验数据:iris data
预处理:把类别一栏给去掉:
> newiris <- iris
> newiris$Species <- NULL
聚类:参数类别数为3
> (kc <- kmeans(newiris, 3))
查看聚类效果:
> table(iris$Species, kc$cluster)
1 2 3
setosa 0 50 0
versicolor 2 0 48
virginica 36 0 14
结果说明了什么:
setosa可以和其他两类在”聚类“方法上区别的很好。
而 clusters “‘versicolor” and “virginica”将在一定的程度上overlap
图示结果:(利用两个属性映射到二维空间)
> plot(newiris[c("Sepal.Length", "Sepal.Width")], col = kc$cluster) #聚类结果
> points(kc$centers[,c("Sepal.Length", "Sepal.Width")], col = 1:3, pch = 8, cex=2)#聚类中心
**************
Hierarchical Clustering
**************
数据预处理:
Draw a sample of 40 records from iris data, and remove variable Species
> idx <- sample(1:dim(iris)[1], 40)
> irisSample <- iris[idx,]
> irisSample$Species <- NULL
Hierarchical clustering
> hc <- hclust(dist(irisSample), method="ave")
> plot(hc, hang = -1, labels=iris$Species[idx])
未完待续:
**************
Density-based Clustering
**************
**************
所有的有关聚类的R包:
**************