vlambda博客
学习文章列表

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默认为欧氏距离

R语言 | 聚类分析及R使用


-系统聚类法 -

R语言 | 聚类分析及R使用


先将个样品分成类,每个样品自成一类,然后每次将具有最小距离的两类合并,合并后重新计算类与类之间的距离,这个过程一直继续到所有的样品归为一类为止,并把这个过程做成一张系统聚类图。

主要包括:

最短距离法(single)

最长距离法(complete)

中间距离法(median)

类平均法(average)

重心法(centroid)

离差平均和法(ward)

特点:

综合性

形象性

客观性



R语言 | 聚类分析及R使用

系统聚类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"。

R语言 | 聚类分析及R使用




-快速聚类法 -




快速聚类法的基本思想是将每一个样品分配给最近中心(均值)的类中。

只有在类的均值被定义的情况下才能使用,对于“噪声”和孤立点是敏感的,这种数据对均值影响极大。








关于变量变换:

平移变换

稽查变换

标准差变换

主成分变换

对数变换





快速聚类函数kmeans的用法:

kmeans(X,centers,···)

X数据框或数据矩阵,centers聚数类或初始聚类中心

R语言 | 聚类分析及R使用

01

-代码分析 -



R语言 | 聚类分析及R使用



R语言 | 聚类分析及R使用



R语言 | 聚类分析及R使用
R语言 | 聚类分析及R使用