聚类分析法是理想的多变量统计技术,主要有分层聚类法和迭代聚类法。 聚类分析也称群分析、点群分析,是研究分类的一种多元统计方法。
SPSS的聚类结果输出一般为冰柱状图和聚类树状图。相对SPSS,R语言ggfortify包中的autoplot ()函数,提供了一整套聚类分析的可视化包,可很容易就能做出漂亮的聚类图片,风格完全不同于SPSS。ggplot2自带的Iris数据集,也称鸢尾花卉数据集,是一类多重变量分析的数据集。通过花萼长度,花萼宽度,花瓣长度,花瓣宽度4个属性预测鸢尾花卉属于(Setosa,Versicolour,Virginica)三个种类中的哪一类。可用于算法的检测,是常用的测试数据。本次以为iris数据集为例,讲解聚类分析的可视化。
01
安装包及数据准备
#在计算之前,首先安装两个安装包
install.packages('ggplot2')
install.packages('ggfortify')
install.packages('cluster')
#加载安装包
library(ggplot2)
library(ggfortify)
library(cluster)
#查看前6条数据
head(iris)
iris数据集基本情况
02
聚类分析的可视化
#k-means聚类
autoplot(kmeans(USArrests, 3), data = USArrests)
K聚类的聚类图
从上图可以看出,不同的类别用不同的颜色分开,清晰的画出了3个类。此外,我们可以给每个点添加标签。
autoplot(kmeans(USArrests, 3), data = USArrests, label = TRUE, label.size = 3)
添加标签的聚类图
也可以用其他类型的聚类方法
library(cluster) autoplot(clara(iris[-5], 3))
其他方法聚类图
有时候,这样的聚类图显得有些简单,我们可以再把图形做的美观一些,比如,用线段把每个类圈出来,病给予不同的颜色。也可以用圆画出来。
autoplot(fanny(iris[-5], 3), frame = TRUE)
线段圈出每个类
autoplot(pam(iris[-5], 3), frame = TRUE, frame.type = 'norm')
圆圈出每个类
异次元点评
R语言的可视化极为强大,相比SPSS的聚类图,R给出的聚类图更加清爽,结果一目了然,当然,聚类树状图和冰柱状图也能给出,这里只做了不同于SPSS的几种图形,更多可视化的方法,可参考相关的。
更多医统内容
长按关注公众号
联系客服