R语言进行聚类分析

目录

简述6种系统聚类法

实验实例和数据资料:

上机实验步骤:

进行最短距离聚类:

进行最长距离聚类:

进行中间距离聚类:

进行类平均法聚类:

进行重心法聚类:

进行ward.D聚类:

进行ward.D2聚类:


简述6种系统聚类法

(一)单链接聚类法:也称为最小距离聚类法,它通过计算两个簇中最近的成员之间的距离来确定簇之间的距离。该方法通常会产生长而细的簇,对异常值敏感。

(二)完全链接聚类法:也称为最大距离聚类法,它通过计算两个簇中最远的成员之间的距离来确定簇之间的距离。该方法通常会产生紧凑的簇,对异常值不敏感。

(三)平均链接聚类法:它通过计算两个簇中所有成员之间的平均距离来确定簇之间的距离。该方法可以在一定程度上平衡单链接和完全链接的缺点。

(四)中心链接聚类法:它通过计算两个簇的质心之间的距离来确定簇之间的距离。质心是指簇中所有成员的平均值。该方法产生的簇具有更加均衡的大小。

(五)Ward聚类法:它基于最小方差准则,通过计算将两个簇合并后整体的方差增加量来确定簇之间的距离。该方法倾向于产生方差相对较小的簇。

(六)类平均聚类法:它通过计算两个簇中所有成员之间的平均距离来确定簇之间的距离。类平均聚类法与平均链接聚类法类似,但不同于平均链接聚类法使用所有成员之间的距离,而是只使用两个簇之间的成员之间的距离。

实验实例和数据资料:

P2122) 为了比较我国 31个省、市、自治区 1996年和2007(数据见本章例7.2d3.1)城镇居民生活消费的分布规律,根据调查资料作区域消费类型划分。并将1996年和2007年的数据进行对比分析。今收集了八个反映城镇居民生活消费结构的指标(1996年数据见表1和表2)

表1 八个反映城镇居民生活消费结构的指标

符号

指标

单位

X1

X2

X3

X4

X5

X6

X7

X8

人均食品支出

人均衣着商品支出

人均家庭设备用品及服务支出

人均医疗保健支出

人均交通和通信支出

人均娱乐教育文化服务支出

人均居住支出

人均杂项商品和服务支出

/

/

/

/

/

/

/

/

表2 1996年全国31个省、市、自治区城镇居民消费数据

X1

X2

X3

X4

X5

X6

X7

X8

北京

8170.22

2794.87

1974.25

1717.58

4106.04

3984.86

2125.99

1401.08

天津

7943.06

1950.68

1205.62

1694.29

3468.86

2353.43

2088.62

1007.31

河北

4404.4

1488.11

977.46

1117.3

2149.57

1550.63

1526.28

426.29

山西

3676.65

1627.53

870.91

1020.61

1775.3

2065.44

1612.36

516.84

内蒙古

6117.93

2777.25

1233.39

1394.8

2719.92

2111

1951.05 

943.72

辽宁

5803.9

2100.71

1145.57

1343.05

2589.18

2258.46

1936.10 

852.69

吉林

4658.13

1961.2

908.43

1692.11

2217.87

1935.04 

1932.24

627.3

黑龙江

5069.89

1803.45

796.38

1334.8

1661.35

1396.38

1543.29 

556.16

上海

9822.88

2032.28

1705.47

1350.28

4736.36

4122.07

2847.88

1537.78

江苏

7074.11

2013

1378.85

1122

3135

3290

1564.3

794.00 

浙江

8008.16

2235.21

1400.57

1244.37

4568.32

2848.75

2004.69

947.13

安徽

6370.23

1687.49

898.55

869.89

2411.16

1904.15

1633.55

480.16

福建

7424.67

1685.07

1416.94

935.5

3219.46

2448.36

2013.53

949.19

江西

5221.1

1566.49

1004.15

672.5

1812.78

1671.24

1414.89

471.58

山东

5625.94

2277.03

1269.65

1109.37

2474.83

1909.84

1780.07

665.52

河南

4913.87

1916.99

1281.06

1054.54

1768.28

1911.16

1315.28

660.81

湖北

6259.22

1881.85

1059.22

1033.46

1745.05

1922.83

1456.30 

391.57

湖南

5583.99

1520.35

1146.65

1078.82

2409.83

2080.46

1529.50 

537.51

广东

8856.91

1614.87

1539.09

1122.71

4544.21

3222.40 

2339.12

893.95

广西

5841.16

1015.88

1086.46

776.26

2564.92

2093.99

1622.50 

386.46

海南

6979.22

932.63

1030.79

734.28

2005.73

1923.48

1578.65

408.26

重庆

7245.12

2333.81

1325.91

1245.33

1976.19

1722.66

1376.15

588.70 

四川

6471.84

1727.92

1196.65

1019.04

2185.94

1877.55

1321.54

542.99

贵州

4915.02

1401.85

1083.77

633.72

1870.08

1950.28

1496.49

351.66

云南

5741.01

1356.91

987.24

1085.46

2197.73

2045.29

1384.91

357.61

西藏

5889.48

1528.14

541.46

617.97

500.6

1551.34

963.99

638.89

陕西

6075.58

1915.33

1060.49

1310.19

2019.08

2208.06

1465.81

626.16

甘肃

5162.87

1747.32

939.48

1117.42

1503.61

1547.65

1596

406.37

青海

4777.1

1675.06

890.08

813.13

1742.96

1471.98

1684.78

484.41

宁夏

4895.2

1737.21

1001.82

1158.83

2503.65

1868.42

1497.98

657.99

新疆

5323.5

2036.94

977.8

1179.77

2210.25

1597.99

1275.35

604.55

试对该数据进行聚类分析。​​​​​​​

上机实验步骤:

1.准备数据:根据提供的消费数据,将数据保存在一个Excel文件中,并确保每个地区在所有指标上都有完整的数据。将文件命名为"1996年数据.xlsx"。

2. 加载数据并计算距离矩阵

data=read.xlsx('1996年数据.xlsx',rowNames=T);data  
dist_matrix <- dist(data)  

结果如下

进行最短距离聚类:

j1 <- hclust(dist_matrix, method = "single")  
plot(j1, main = "最短距离聚类树状图")  

结果如下

进行最长距离聚类:

j2 <- hclust(dist_matrix, method = "complete")  
plot(j2, main = "最长距离聚类树状图")  

结果如下

进行中间距离聚类:

j3 <- hclust(dist_matrix, method = "median")  
plot(j3, main = "中间距离聚类树状图")  

结果如下

进行类平均法聚类:

j4 <- hclust(dist_matrix, method = "average")  
plot(j4, main = "类平均法聚类树状图")  

结果如下

进行重心法聚类:

j5 <- hclust(dist_matrix, method = "centroid")  
plot(j5, main = "重心法聚类树状图")

结果如下

进行ward.D聚类:

j6 <- hclust(dist_matrix, method = "ward.D")  
plot(j6, main = "ward.D聚类树状图")  

结果如下

进行ward.D2聚类:

j7 <- hclust(dist_matrix, method = "ward.D2")  
plot(j7, main = "ward.D2聚类树状图") 

结果如下

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

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

相关文章

【回眸】Linux 内核 (十四)进程间通讯 之 信号量

前言 信号量概念 信号量常用API 1.创建/获取一个信号量 2.改变信号量的值 3. 控制信号量 信号量函数调用 运行结果展示 前言 上一篇文章介绍的共享内存有局限性,如:同步与互斥问题、内存管理复杂性问题、数据结构限制问题、可移植性差问题、调试困难问题。本篇博文介…

记录IBM服务器检测到备份GPT损坏警告排查解决过程

服务器设备&#xff1a;IBM x3550 M4 Server IMM默认IP地址&#xff1a;192.168.70.125 用户名&#xff1a;USERID 密码&#xff1a;PASSW0RD&#xff08;注意是零0&#xff09; 操作系统&#xff1a;Windows Hyper-V Server 2016 IMM Web System Status Warning&#xff1…

“Pseudo Global Warming”:伪全球变暖PGW

“Pseudo Global Warming”&#xff1a;伪全球变暖PGW PGW方法概述&#x1f50d; 一、PGW 方法的定义&#x1f9e0; 二、PGW 方法的基本原理&#x1f6e0;️ 三、PGW 方法的主要步骤&#x1f4c8; 四、PGW 模拟时常涉及的变量&#x1f4ca; 五、PGW 方法的优/缺点&#x1f4da;…

2025-04-06 Unity Editor 2 —— GUILayout

文章目录 常用组件1 Label 文本标签2 TextField / TextArea / PasswordField 输入框3 Butto / RepeatButton 按钮4 Horizontal / Vertical 方向布局5 Box 自动布局框6 ScrollView 滚动视图7 Horizontal / VerticalSlider 滑动条8 Area GUI 区域9 Window 窗口10 Toolbar 工具栏1…

Qt 交叉编译详细配置指南

一、Qt 交叉编译详细配置 1. 准备工作 1.1 安装交叉编译工具链 # 例如安装ARM工具链(Ubuntu/Debian) sudo apt-get install gcc-arm-linux-gnueabihf g++-arm-linux-gnueabihf# 或者64位ARM sudo apt-get install gcc-aarch64-linux-gnu g++-aarch64-linux-gnu 1.2 准备目标…

用PointNet++训练自己的数据集(语义分割模型semseg)

&#xff08;1&#xff09;训练部件分割&#xff08;partseg&#xff09;模型和检测自己点云并将结果保存txt&#xff0c;请看博主上两篇文章 &#xff08;2&#xff09;本文背景是将pipe点云上的缺陷和本体检测出来&#xff0c;即1种语义场景&#xff08;pipe&#xff09;&…

kotlin中主构造函数是什么

一 Kotlin 中的主构造函数 主构造函数&#xff08;Primary Constructor&#xff09;是 Kotlin 类声明的一部分&#xff0c;用于在 创建对象时初始化类的属性。它不像 Java 那样是一个函数体&#xff0c;而是紧跟在类名后面。 主构造函数的基本定义 class Person(val name: S…

PHP 过滤器

PHP 过滤器 引言 PHP作为一种广泛使用的服务器端脚本语言&#xff0c;提供了强大的数据处理能力。在处理数据时&#xff0c;确保数据的安全性和准确性至关重要。PHP过滤器&#xff08;Filters&#xff09;就是用来对数据进行预处理和后处理的工具。本文将详细介绍PHP过滤器的…

【WebRTC】开源项目Webrtc-streamer介绍

WebRTC-Streamer 这是一个用于通过简单的信令机制&#xff08;参见 api&#xff09;流式传输 WebRTC 媒体源的实验项目&#xff0c;支持以下媒体源&#xff1a; 捕获设备 屏幕捕获 mkv 文件 RMTP/RTSP 源 同时该项目也兼容 WHEP 接口。 注意 * 在线演示已停止&#xff0c…

【Java设计模式】第9章 原型模式讲解

9. 原型模式 9.1 原型模式讲解 定义:通过拷贝原型实例创建新对象,无需调用构造函数。特点: 创建型模式无需了解创建细节适用场景: 类初始化消耗资源多对象创建过程繁琐(如属性赋值复杂)循环体中需创建大量对象优点: 性能优于直接new简化创建流程缺点: 必须实现clone()…

【Java集合】LinkedList源码深度分析

参考笔记&#xff1a;java LinkedList 源码分析&#xff08;通俗易懂)_linkedlist源码分析-CSDN博客 目录 1.前言 2.LinkedList简介 3.LinkedList的底层实现 4.LinkedList 与 ArrayList 的对比 4.1 如何选择 4.2 对比图 5.LinkedList 源码Debug 5.1 add(E e) &#xff…

openssl源码分析之加密模式(modes)

openssl实现分组加密模式&#xff08;例如AES128-CBC的CBC部分&#xff09;的模块名字叫做modes&#xff0c;源代码位于 https://gitee.com/gh_mirrors/openssl/tree/master/crypto/modes 博主又打不开github了TT&#xff0c;只能找个gitee镜像 头文件是modes.h。 该模块目前…

Java 搭建 MC 1.18.2 Forge 开发环境

推荐使用 IDEA 插件 Minecraft Development 进行创建项目 创建完成后即可进行 MOD 开发。 但是关于 1.18.2 的开发教程太少&#xff0c;因此自己研究了一套写法&#xff0c;写法并非是最优的但是是探索开发MOD中的一次笔记和记录 GITHUB: https://github.com/zimoyin/zhenfa…

nginx如何实现负载均衡?

Nginx 是一款高性能的 Web 服务器和反向代理服务器&#xff0c;它可以通过配置实现负载均衡功能。以下是实现负载均衡的详细步骤和方法&#xff1a; 1. 基本概念 负载均衡是将客户端请求分发到多个后端服务器上&#xff0c;以提高系统的可用性和性能。Nginx 支持多种负载均衡策…

深度学习天崩开局

李沐大神的d2l包导入&#xff0c; 这玩意需要python311版本&#xff0c;我现在版本已经313了&#xff0c;作为一个天生要强的男人&#xff0c;我是坚决不向低版本低头的。 然后我就研究啊&#xff0c;各种翻资料啊&#xff0c;然后deepseek加豆包都翻烂了&#xff0c; 最终所…

docker部署jenkins并成功自动化部署微服务

一、环境版本清单&#xff1a; docker 26.1.4JDK 17.0.28Mysql 8.0.27Redis 6.0.5nacos 2.5.1maven 3.8.8jenkins 2.492.2 二、服务架构&#xff1a;有gateway&#xff0c;archives&#xff0c;system这三个服务 三、部署步骤 四、安装linux 五、在linux上安装redis&#…

MPDrive:利用基于标记的提示学习提高自动驾驶的空间理解能力

25年4月来自南方科技大学、百度、英国 KCL和琶洲实验室&#xff08;广东 AI 和数字经济实验室&#xff09;的论文“MPDrive: Improving Spatial Understanding with Marker-Based Prompt Learning for Autonomous Driving”。 自动驾驶视觉问答&#xff08;AD-VQA&#xff09;…

Halcon图像采集

Halcon是一款强大的机器视觉软件&#xff0c;结合C#可以开发出功能完善的视觉应用程序。 基本设置 确保已经安装了Halcon和Halcon的.NET库&#xff08;HalconDotNet&#xff09;。 1. 添加引用 在C#项目中&#xff0c;需要添加对HalconDotNet.dll的引用&#xff1a; 右键点…

Win10定时任务计划无法显示要执行的EXE任务程序界面,问题解决办法

用C#开发的一款WINFORM程序&#xff0c;在电脑测试一切顺利&#xff0c;运行结果正确。但用电脑的定时任务执行时&#xff0c;程序界面不显示&#xff0c;重启电脑、各种试都不行&#xff0c;最终问题解决。 解决办法&#xff1a; 要选“只在用户登陆时运行”&#xff0c;才能执…

Navicat和PLSQL在oracle 使用语句报ORA-00911: 无效字符

后面我发现可能是在复制SQL语句中有中文&#xff0c;但是环境变量未配置中文环境。 因为Oracle的语法解析器特别严格&#xff0c;就会报出以上的错误出来。 SQL语句错误&#xff0c;存在中文字符或者sql语句空格导致&#xff0c;去掉即可解决。 我重新写语句&#xff0c;发现…