R语言鸢尾花iris数据集的层次聚类分析

news2025/7/19 6:23:20

介绍

本文在数据集上展示了如何使用dendextend R软件包来增强Hierarchical Cluster Analysis(更好的可视化和灵敏度分析)。最近我们被客户要求撰写关于鸢尾花iris的研究报告,包括一些图形和统计输出。

 【视频】KMEANS均值聚类和层次聚类:R语言分析生活幸福质量系数可视化实例

KMEANS均值聚类和层次聚类:R语言分析生活幸福质量系数可视化实例

,时长06:05

背景

鸢尾花数据集

#加载数据

iris <- datasets::iris

iris2 <- iris[,-5]

species_labels <- iris[,5]

library(colorspace) # 颜色包

species_col <- rev(rainbow_hcl(3))[as.numeric(species_labels)]

#绘制 SPLOM:

pairs(iris2, col = species_col,

      lower.panel = NULL,

       cex.labels=2, pch=19, cex = 1.2)



# 添加图例

par(xpd = TRUE)

legend(x = 0.05, y = 0.4, cex = 2,

   legend = as.character(levels(species_labels)),

    fill = unique(species_col))

par(xpd = NA)

11808f62cab1c2d8f74dedb9a42d22cc.png

我们可以看到,Setosa物种与Versicolor和Virginica明显不同(它们具有较低的花瓣长度和宽度)。但是,基于对萼片和花瓣宽度/长度的测量,不易将Versicolor和Virginica分开。

通过查看数据的平行坐标图可以得出同样的结论:

我们可以通过将对象转化为树状图并对对象进行一些调整来可视化运行它的结果

相同的可以在圆形布局中呈现:

这些可视化很容易证明分层聚类的分离对于“Setosa”物种来说是非常好的,但是在将许多“Versicolor”物种标记为“Virginica”时未能实现。

我们也可以使用热图探索数据。

在热图中,我们还可以看到Setosa物种的花瓣值如何(浅黄色),但很难看出其他两种物种之间的明显区别。

各种聚类算法之间的相似/不同

为了进行这种分析,我们将创建所有8个hclust对象,并将它们链接在一起成为一个dendlist对象(顾名思义,它可以将一组树状图组合在一起用于进一步分析)。

接下来,我们可以看看每个聚类结果之间的同源相关性cor.dendlist。(这可以使用corrplot包中的corrplot函数很好地绘制):

从上图中我们可以很容易地看到,除了完整的方法(默认方法in hclust),大多数聚类方法的结果非常相似,其结果相关度大约为0.6。

默认的同源相关使用皮尔逊的度量,但如果我们使用spearman的相关系数呢?

我们可以看到,相关性不是很强,表明一个行为依赖于彼此距离很远的一些项目,这些项目对皮尔森相关性的影响相关性更大。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/36020.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

从0开始配置深度学习环境(Python)

写这篇文章的起因是因为重装了电脑&#xff0c;之前配好的深度学习环境没了&#xff0c;又在网上找了很久&#xff0c;所以决定记录一下&#xff0c;以备后续刷机。 环境&#xff1a; 显卡&#xff1a;GTX1060 6G CUDA驱动版本&#xff1a;457.20 ——11.1.114 Python版本&…

常用的JVM配置参数说明

工作中常用的JVM参数配置&#xff0c;以Java8为例&#xff1a; 日志相关 -XX:PrintFlagsFinal,打印JVM所有参数的值 -XX:PrintGC,打印GC信息 -XX:PrintGCDetails,打印GC详细信息 -XX:PrintGCTimeStamps,打印GC 的时间戳 -Xloggc:filename,设置GClog文件的位置 -XX:PrintT…

Java抽象类和接口

对于Java面向对象编程来说&#xff0c;抽象也是它的一个重要特征。在 Java 中&#xff0c;可以通过两种形式来体现 面向对象&#xff08;OOP&#xff09;的抽象&#xff1a;接口和抽象类。这篇文章就为大家介绍这两个的相似与区别之处。 一、抽象类&#xff08;abstract&#…

3.4 这些都是小红书的流量入口【玩赚小红书】

主要有下面这些位置&#xff1a; ​ 1、推荐流量&#xff1a;根据用户往期的搜索习惯推荐&#xff0c;相当于是猜用户喜欢&#xff0c;精准度会低一些 ​ 2、位置流量&#xff1a;根据用户所在的位置推荐&#xff0c;一般是同城20km范围内。直接在主页-发现-后边的附近那里可…

报告解读下载 | 11月《中国数据库行业分析报告》发布,精彩抢先看

为了帮助大家及时了解中国数据库行业发展现状、梳理当前数据库市场环境和产品生态等情况&#xff0c;从2022年4月起&#xff0c;墨天轮社区行业分析研究团队出品将持续每月为大家推出最新《中国数据库行业分析报告》&#xff0c;持续传播数据技术知识、努力促进技术创新与行业生…

数位dp总结

补题的时候有个题需要数位dp&#xff0c;有去重学了一波上一年就学过的数位dp&#xff0c;又学一遍感觉上一年学了个寂寞&#xff0c;&#xff0c;&#xff0c; 这种问题大多数都是和数的每一位的数字有关&#xff0c;一般是一个数的数位之间存在着某种关系&#xff0c;让求具有…

网络通信基本原理

通讯的必要条件 主机之间需要有传输介质。光纤、蓝牙、wify主机上必须有网卡设备。把二进制信息转为高低电压的过程就是数据的调制过程。把电信号转为二进制信息的过程为解调制。主机之间需要协商网络速率。 网路的通讯方式 日常生活中&#xff0c;我们通讯的方式不可能只有…

IPD流程概要

一、IPD流程的主要内容 CDCP:concept decision check point 的缩写,意为概念决策评审点。在概念阶段结束时要召开一个概率决策评审会,在这个会议上,PDT正式向IPMT报告初始的业务计划,由IPMT决定项目是继续还是终止。若初始的业务计划得到批准,分委会将做出下一阶段开始前…

11.14-11.21

1.线性蒙皮 1.1 线性蒙皮定义 线性蒙皮&#xff1a;是由一系列骨骼驱动的。每个顶点会根据顶点权重图和相应的骨骼关联。根据骨骼在当前位置相对于静止位置的变换矩阵以及此顶点相对于该骨骼的权重&#xff0c;我们可以计算出该顶点在该骨骼影响下的位置。 假设Wij是第j个骨…

【数据可视化】第三章——数据可视化综合实践

Matplotlib作业数据.csv文件查看百度网盘&#xff1a;链接&#xff1a;https://pan.baidu.com/s/1oFB_KwhiJNlJAgXg7RaYuw?pwdabcd 提取码&#xff1a;abcd 1.作业描述 作业&#xff1a;根据Matplotlib作业数据.csv做出4种不同类型的组合图像 要求&#xff1a;根据情况适当添…

深入浅出基于HLS流媒体协议视频加密的解决方案

一套简单的基于HLS流媒体协议&#xff0c;使用video.js NodeJS FFmpeg等相关技术实现的m3u8tsaes128视频加密及播放的解决方案示例。 项目简介 起初是为了将工作中已有的基于Flash的视频播放器替换为不依赖Flash的HTML5视频播放器&#xff0c;主要使用了现有的video.js开源播…

Windows内核--HAL在抽象什么?(3.4)

From: HAL在Kernel和硬件之间 HAL在抽象什么&#xff1f; HAL位于内核最底层。“与硬件直接打交道“的这一层被称为硬件抽象层。顾名思义&#xff0c;Windows内核希望把硬件相关的代码放在HAL模块&#xff0c;而这似乎与WRK众多amd64或x86目录相违背。 注意&#xff0c;任何代…

如何优雅的终止线程 Java

目录 终止线程的方法 打断sleep函数 打断正常执行的线程 两阶段终止模式 错误的方法 使用线程对象的 stop() 方法停止线程 使用 System.exit(int) 方法停止线程 正确的方法&#xff1a;使用 interrrupt 终止线程的方法 XXXThread.interrupt(); 在线程的 run函数中对该线…

NFT+体育,卡塔尔世界杯有哪些NFT看点!

有人说没有冷门的世界杯不是真正的世界杯&#xff01;11月22日&#xff0c;卡塔尔世界杯小组赛C组第1轮比赛中&#xff0c;沙特爆冷2:1逆转阿根廷队&#xff0c;成了今年世界杯的第一个冷门。世界排名第51位的沙特队战胜了排名第3的阿根廷队&#xff0c;结束了阿根廷队此前的36…

vue拖拽删除实现

拖拽删除 背景 自营上传图片&#xff0c;但是需要排序和删除功能&#xff0c;所以用到了h5的拖拽 源元素&#xff1a; 即被拖拽的元素。 目标元素&#xff1a; 即合法的可释放元素。 每个事件的事件主体都是两者之一。 拖拽事件 触发顺序及次数 被拖拽元素&#xff0c;事…

day5-day6【代码随想录】螺旋矩阵II

文章目录前言一、螺旋矩阵||&#xff08;力扣59&#xff09;二、螺旋矩阵&#xff08;力扣54&#xff09;前言 坚持循环不变量原则。 模拟顺时针画矩阵的过程: 填充上行从左到右 填充右列从上到下 填充下行从右到左 填充左列从下到上 由外向内一圈一圈这么画下去 一、螺旋矩阵…

大三保研夏令营须知及前期准备工作

前言 对于大三保研学生而言&#xff0c;学期将近结束&#xff1b;接踵而来的是接下来的保研准备。保研阶段通常可以分为&#xff1a;夏令营、预推免、九推(捡漏)。很多同学往往都是在前两个阶段就能获得满意的offer。 对于计算机专业来说&#xff0c;经历过2022年的“推免季”&…

项目实战——匹配系统(下)

目录 一、整体梳理 二、创建SpringCloud目录 三、创建子项目 四、实现接口 五、config网关配置 六、放行API 七、封装后端逻辑 八、对接匹配系统 九、修改数据库 十、实现匹配之后的逻辑 十一、线程锁 十二、匹配函数 上节课知识梳理&#xff1a; 用户浏览器打开之…

天津专升本报名时的报名点

2023年天津专升本报名区县及应届生、往届生报名点 天津市在校大三应届生报名点选自己的专科院校&#xff0c;往届生及在外省就读的应届生选户籍所在区招办。 退役士兵从天津入伍的选择学校作为报名点&#xff0c;外省市入伍的选择区招办。

slambook2(ch2)—— Ubuntu20.04 使用cmake + make自动化编译过程

slambook2&#xff08;ch2&#xff09;—— Ubuntu20.04 使用cmake make自动化编译过程主函数库函数libhello.cpplibhello.hCMakeLists.txt编译重新编译vim加行号主函数 main.cpp 库函数 libhello.cpp libhello.h CMakeLists.txt 编译 mkdir build && cd build c…