实验报告 聚类分析

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

实验报告聚类分析

实验原理:K均值聚类、中心点聚类、系统聚类和EM算法聚类分析技术。

实验题目:用鸢尾花的数据集,进行聚类挖掘分析。

实验要求:探索鸢尾花数据的基本特征,利用不同的聚类挖掘方法,获得基本结论并简明解释。

实验题目--分析报告:data(iris)

> rm(list=ls())

> gc()

used (Mb) gc trigger (Mb) max used (Mb)

Ncells 431730 23.1 929718 49.7 607591 32.5

Vcells 787605 6.1 8388608 64.0 1592403 12.2

> data(iris)

> data<-iris

> head(data)

Sepal.Length Sepal.Width Petal.Length Petal.Width Specie s

1 5.1 3.5 1.4 0.

2 setosa

2 4.9 3.0 1.4 0.2 setosa

3 4.7 3.2 1.3 0.2 setosa

4 4.6 3.1 1.

5 0.2 setosa

5 5.0 3.

6 1.4 0.2 setosa

6 5.4 3.9 1.

7 0.4 setosa

#Kmean聚类分析

> newiris <- iris

> newiris$Species <- NULL

> (kc <- kmeans(newiris, 3))

K-means clustering with 3 clusters of sizes 62, 50, 38

Cluster means:

Sepal.Length Sepal.Width Petal.Length Petal.Width

1 5.901613 2.748387 4.393548 1.433871

2 5.006000 3.428000 1.462000 0.246000

3 6.850000 3.07368

4 5.74210

5 2.071053

Clustering vector:

[1] 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2 2

2 2 2 2 2 2 2

[41] 2 2 2 2 2 2 2 2 2 2 1 1 3 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 3 1 1

[81] 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 3 1 3 3 3 3 1 3 3 3 3 3 3 1 1 3 3 3 3 1

[121] 3 1 3 1 3 3 1 1 3 3 3 3 3 1 3 3 3 3 1 3 3 3 1 3 3 3 1 3 3 1

Within cluster sum of squares by cluster:

[1] 39.82097 15.15100 23.87947

(between_SS / total_SS = 88.4 %)

Available components:

[1] "cluster" "centers" "totss" "withinss" "tot.withinss"

[6] "betweenss" "size" "iter" "ifault"

> table(iris$Species, kc$cluster)

1 2 3

setosa 0 50 0

versicolor 48 0 2

virginica 14 0 36

> plot(newiris[c("Sepal.Length", "Sepal.Width")], col = kc $cluster)

> points(kc$centers[,c("Sepal.Length", "Sepal.Width")], c ol = 1:3, pch = 8, cex=2)

#K-Mediods 进行聚类分析

> install.packages("cluster")

> library(cluster)

> iris.pam<-pam(iris,3)

> table(iris$Species,iris.pam$clustering) 1 2 3

setosa 50 0 0

versicolor 0 3 47

virginica 0 49 1

> layout(matrix(c(1,2),1,2))

> plot(iris.pam)

> layout(matrix(1))

#hc

> iris.hc <- hclust( dist(iris[,1:4]))

> plot( iris.hc, hang = -1)

> plclust( iris.hc, labels = FALSE, hang = -1)

> re <- rect.hclust(iris.hc, k = 3)

> iris.id <- cutree(iris.hc, 3)

#利用剪枝函数cutree()参数h控制输出height=18时的系谱类别

> sapply(unique(iris.id),

+ function(g)iris$Species[iris.id==g])

[[1]]

[1] setosa setosa setosa setosa setosa setosa setosa setosa setosa setosa setosa [12] setosa setosa setosa setosa setosa setosa setosa setosa setosa setosa setosa [23] setosa setosa setosa setosa setosa setosa setosa setosa setosa setosa setosa [34] setosa setosa setosa setosa setosa setosa setosa setosa setosa setosa setosa [45] setosa setosa setosa setosa setosa setosa

Levels: setosa versicolor virginica

[[2]]

[1] versicolor versicolor versicolor versicolor versicolor versicolor versicolor [8] versicolor versicolor versicolor versicolor versicolor versicolor versicolor [15] versicolor versicolor versicolor versicolor versicolor versicolor versicolor [22] versicolor versicolor virginica virginica virginica virginica virginica [29] virginica virginica virginica virginica virginica virginica virginica

相关文档
最新文档