基本思想

  1. 每一个样本作为一类
  2. 按照某一种方法进行距离度量,比如“欧氏距离”
  3. 距离最短划为1类
  4. 重复步骤2和3,每次减少一类,直至所有样本合成1类

案例

数据

这里用鸢尾花数据集作为实验数据

data(iris)# 载入数据
plot(iris)# 画图


**注意:一般聚类前要将数据进行标准化。**消除量纲影响

irisScaled <- scale(iris[, -5])# 数据标准化
# iris[, -5] 去掉第五列的数据,因为第五列的数据是字符型

具体实验步骤

计算样本之间的距离

d <- dist(irisScaled[, 1:4])
fitH <- hclust(d, "ward.D2")
# 数值计算距离
# 注释:在聚类中求两点的距离有:
# 1,绝对距离:manhattan
# 2,欧氏距离:euclidean 默认
# 3,闵科夫斯基距离:minkowski
# 4,切比雪夫距离:chebyshev
# 5,马氏距离:mahalanobis
# 6,蓝氏距离:canberra
# 根据距离聚类
out.hclust=hclust(out.dist,method="complete")
# 注释:聚类中集合之间的距离:
# 1,类平均法:average
# 2,重心法:centroid
# 3,中间距离法:median
# 4,最长距离法:complete 默认
# 5,最短距离法:single
# 6,离差平方和法:ward
# 7,密度估计法:density#(1)聚类方法"centroid" 相对应使用的距离为平方欧式距离 squared Euclidean distances.   如:hc1ust.centroid <- hclust(dist(cent)^2, method = "cen")#(2)聚类方法"ward.D2" 相对应使用的距离为欧式距离 "Euclidean" distances.#(3)聚类方法"average"(=UPGMA) 相对应使用的距离为 "bray"(=Bray-Curtis) distances.

生成聚类结果

plot(fitH)

生成3类

rect.hclust(fitH, k = 3, border = "red")

这里红色框框框到的,他就是一类别

切割

切割的方法是具体知道某一个样本属于哪一类

clusters <- cutree(fitH, k = 3) 

会返回一组向量,向量所对应的就是该样本所属于的类别。
这里用颜色来区分

plot(iris, col = clusters)


讲真这个分类结果还算蛮好的。
结束!

基于R语言的层次聚类分析-【案例实操】-基本操作,一看就会相关推荐

  1. R语言 : 层次聚类分析

    参考书: R语言实战_第2版_中文版 第四部分 高级方法 : 第16章 聚类分析 : 16.3 层次聚类分析 从 http://www.gdfc.org.cn/datas/history/twocol ...

  2. 基于R语言的聚类分析(k-means,层次聚类)

    今天给大家展示基于R语言的聚类,在此之前呢,首先谈谈聚类分析,以及常见的聚类模型,说起聚类我们都知道,就是按照一定的相似性度量方式,把接近的一些个体聚在一起.这里主要是相似性度量,不同的数据类型,我们 ...

  3. 基于R语言混合效应模型(mixed model)案例研究

    全文链接: http://tecdat.cn/?p=2596 在本文中,我们描述了灵活的竞争风险回归模型.回归模型被指定为转移概率,也就是竞争性风险设置中的累积发生率(点击文末"阅读原文&q ...

  4. R语言Logistic回归模型案例基于AER包的affair数据分析

    R语言Logistic回归模型案例基于AER包的affair数据 目录 R语言Logistic回归模型案例基于AER包的affair数据 #数据加载及目标变量二值化

  5. R语言泊松回归模型案例:基于AER包的affair数据分析

    R语言泊松回归模型案例:基于AER包的affair数据分析 目录 R语言泊松回归模型案例基于AER包的affair数据分析 #数据加载

  6. 基于R语言的代理模型(高斯过程、贝叶斯优化、敏感性分析、异方差性等)高级技术应用

    基于R语言的代理模型(高斯过程.贝叶斯优化.敏感性分析.异方差性等)高级技术应用 直播时间:10月30日-10月31日.11月6日-7日(4天+1周辅导练习) (上午9:30-12:00  下午14: ...

  7. 基于R语言的Meta分析【全流程、不确定性分析】方法与Meta机器学习技术应用

    Meta分析是针对某一科研问题,根据明确的搜索策略.选择筛选文献标准.采用严格的评价方法,对来源不同的研究成果进行收集.合并及定量统计分析的方法,最早出现于"循证医学",现已广泛应 ...

  8. 基于R语言极值统计学及其在相关领域中的应用

    受到气候变化.温室效应以及人类活动等因素的影响,自然界中极端高温.极端环境污染.大洪水和大暴雨等现象的发生日益频繁:在人类社会中,股市崩溃.金融危机等极端情况也时有发生:今年的新冠疫情就是非常典型的极 ...

  9. Protein Cell:基于R语言的微生物组数据挖掘最佳流程(大众评审截止14号晚6点)...

    Protein & Cell综述:基于R语言的微生物组数据挖掘的最佳流程 近日,中国农业科学院刘永鑫组联合南京农业大学袁军组在国际期刊 Protein & Cell (IF = 15. ...

最新文章

  1. P4619 [SDOI2018]旧试题(莫比乌斯反演,建图优化三重枚举,三元环计数,神仙好题,超级清晰易懂)
  2. unslider的用法详解
  3. linux对称哈希 路由,基于 IP 哈希的路由
  4. Codeforces Round #491 (Div. 2) E - Bus Number + 反思
  5. jvm调优:使用jconsole监控Jboss
  6. Python3 字典 copy()方法
  7. java 抛出异常的目的_Java实验八,异常
  8. 你会和丑且家境不好,但对你好的男孩结婚吗?
  9. java opencv 阀值分割_利用OpenCV实现局部动态阈值分割
  10. PHP-laravel框架一1
  11. 什么是光纤?光纤有哪些优势?
  12. 手把手教你从零开始腾讯云服务器部署
  13. 【Java学习笔记】常用API(String、ArrayList)
  14. 无线USB网卡Rndis设备
  15. 寒江独钓 第二章(3)Hook分发函数和回调函数
  16. Android图片代码换色,背景换色
  17. 【最优化方法】1-最优化方法介绍
  18. EJB基础三 有状态EJB
  19. 生产线是什么意思_食品仓储托管小型仓库出租信息什么意思
  20. ico格式的计算机图标,ico图标是什么格式的文件

热门文章

  1. 最优潮流 OPF 算例资源网站
  2. 如何查看一个vs工程使用的vs版本是哪一个?
  3. End-to-End Object Detection with Fully Convolutional Network 论文笔记
  4. Joda-Time 操作常用时间函数
  5. 此beta版已额满_坚果 Pro 3 发布 Smartisan OS v7.5.0早期众测版
  6. linux 应用编程(持续更新)
  7. verilog简单奇校验
  8. 普通运维人员真的就是秋后的蚂蚱吗?
  9. 企业管理必须具备的8大要素!
  10. 人脸识别客户端应用程序_如何在应用程序中使用功能识别设置人脸检测