每R一点:层次聚类分析实例实战

阅读: 评论:0

每R一点:层次聚类分析实例实战

每R一点:层次聚类分析实例实战

聚类分析:对样品或指标进行分类的一种分析方法,依据样本和指标已知特性进行分类。本节主要介绍层次聚类分析,一共包括3个部分,每个部分包括一个具体实战例子。

 

1、常规聚类过程:


一、首先用dist()函数计算变量间距离
dist.r = dist(data, method=" ")
其中method包括6种方法,表示不同的距离测度:"euclidean", "maximum", "manhattan", "canberra", "binary" or "minkowski"。相应的意义自行查找。

 

二、再用hclust()进行聚类
hc.r = hclust(dist.r, method = “ ”)
其中method包括7种方法,表示聚类的方法:"ward", "single", "complete","average", "mcquitty", "median" or "centroid"。相应的意义自行查找。

 

三、画图
plot(hc.r, hang = -1,labels=NULL) 或者plot(hc.r, hang = 0.1,labels=F)
hang 等于数值,表示标签与末端树杈之间的距离,
若是负数,则表示末端树杈长度是0,即标签对齐。
labels 表示标签,默认是NULL,表示变量原有名称。labels=F :表示不显示标签。

 

实例介绍:

 

特殊情况用法:

当用已知距离矩阵进行聚类时,即变量间的距离已经计算完,只是想用
已知的距离矩阵进行聚类。这时,需将距离矩阵转成dist类型。
然后再执行hclust()聚类和plot()画图。

# mydata作为距离矩阵,且为正方矩阵
mydata<-matrix(1:25,ncol=5);
class(mydata);# 把mydata变成dist类型
mydist<-as.dist(mydata);
class(mydist);
[1] "dist"myhc<-hclust(mydist,method="complete");
myhc;Call:
hclust(d = mydist, method ="complete")Cluster method   : complete
Number of objects: 5plot(myhc,hang=0.1)

2、热图聚类过程:


一、首先用dist()函数计算变量间距离
dist.r = dist(data, method=" ")

 

二、用heatmap()函数进行热点图聚类
对于heatmap中具体参数,这里不做过多介绍,可在帮助文档中找说明。除此heatmap函数之外,gplots包中的heatmap.2()函数,也可以做热点图聚类。


其中参数不做过多描述。若有需求,请分享并回复:heatmap.2

即可得到答案。

实战例子:

require(graphics);
dist.r<-dist(USArrests,method="euclidean") # 方法:欧氏距离
dist.r#聚类并画图
heatmap(as.matrix(dist.r))

3、多维标度和聚类的结果


MDS方法对距离矩阵进行降维,用不同的颜色来表示聚类的结果。
另一种聚类效果展示。

 

例子:

 

转自:=MzA3NDUxMjYzMA==&mid=209248280&idx=2&sn=c0ec5d9a9b060654ffdaad3d6911a812#rd

 

转载于:.html

本文发布于:2024-02-05 04:45:41,感谢您对本站的认可!

本文链接:https://www.4u4v.net/it/170724444263151.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:实战   实例   层次
留言与评论(共有 0 条评论)
   
验证码:

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23