R语言 | 聚类分析及R使用
- 聚类分析概念 -
聚类分析法是研究“物类聚”的一种现代统计分析方法,在众多的领域中,都需要采用聚类分析做分析研究。
聚类分析方法包括:系统聚类法和快速聚类法。
聚类分析类型包括:Q型聚类--对样本的聚类;R型聚类--对变量的聚类
聚类统计量:
距离:欧氏距离、马氏距离、兰氏距离
相关系数
距离矩阵计算函数dist的用法:
dist(X,method="euclidean",diag=FALSE,upper=FALSE,p=2)
X数据矩阵,数据框架
method包括 "euclidean", "maximum", "manhattan","canberra","binary"or"minkowski",默认为euclidean距离
diag是否包含对角线元素,默认为无对角线元素
upper是否需要上三角,默认为下三角矩阵
P默认为欧氏距离
-系统聚类法 -
先将个样品分成类,每个样品自成一类,然后每次将具有最小距离的两类合并,合并后重新计算类与类之间的距离,这个过程一直继续到所有的样品归为一类为止,并把这个过程做成一张系统聚类图。
主要包括:
最短距离法(single)
最长距离法(complete)
中间距离法(median)
类平均法(average)
重心法(centroid)
离差平均和法(ward)
特点:
综合性
形象性
客观性
系统聚类R语言步骤:
1、计算距离阵:dist
2、进行系统聚类:hclust
3、绘制聚类图:plot
4、画分类框:rect.hclust
5、确认分类结果:cutree
系统聚类函数hclust用法:
hclust(D,method="complete",···)
D相似矩阵,通常为距离矩阵
method包括“single","complete","average","mcquitty","median",or"centroid","ward",默认为”complete"。
-快速聚类法 -
快速聚类法的基本思想是将每一个样品分配给最近中心(均值)的类中。
只有在类的均值被定义的情况下才能使用,对于“噪声”和孤立点是敏感的,这种数据对均值影响极大。
关于变量变换:
平移变换
稽查变换
标准差变换
主成分变换
对数变换
快速聚类函数kmeans的用法:
kmeans(X,centers,···)
X数据框或数据矩阵,centers聚数类或初始聚类中心
01
-代码分析 -