Matlab聚类分析相关函数

(一)pdist

​ 使用方法:Y = pdist(X, ‘metric’)

​ 表示用’metric’指定的方法计算矩阵X中对象间的距离。其中:

  • 矩阵X为 m×nm\times nm×n 矩阵,可看作 mmm 个 nnn 维行向量,每一个行向量就是样本点
  • 输出的Y是包含距离信息的长度为 m(m−1)2\frac{m(m-1)}{2}2m(m−1)​ 的行向量,由于距离的两两组合后的距离,所以由排列组合可知共有 m(m−1)2\frac{m(m-1)}{2}2m(m−1)​ 个组合。

下面是’metric’常用字符串值:

字符串 含义
‘euclidean’ 欧式距离(默认)
‘seuclidean’ 标准欧几里得距离
‘cityblock’ 绝对值距离
‘minkowski’ 闵氏距离
‘chebychev’ 切比雪夫距离
‘mahalanobis’ 马氏距离

注意:使用闵氏距离时,Y = pdist(X, ‘minkowski’, p),其中p为闵氏距离计算需要用到的指数值,默认为2.

(二)linkage

​ 使用方法:Z = linkage(Y, ‘method’)

​ 表示使用由’method’指定的算法计算生成聚类树,其中:

  • Y为pdist函数输出的 m(m−1)2\frac{m(m-1)}{2}2m(m−1)​ 维距离行向量
  • Z为包含聚类树信息的 (m−1)×3(m-1)\times3(m−1)×3 矩阵。每一行表示一个类(样本)和另一个类(样本)的合并,所以相当于每一个样本都要合并一次,而第一次合并是两个样本进行的,所以总共有 m−1m-1m−1 行。
    • 第一二列表示两个合并类(样本),其中:1∼m1\thicksim m1∼m 表示初始样本;超过 mmm 的是由样本组成的类,记作 m+jm+jm+j ,其中 mmm 为样本总数,jjj 表示该类是在第 jjj 行新形成的。
    • 第三列表示对应两个类(样本)间的距离。

​ 下面是’method’常用的字符串:

字符串 含义
‘single’ 最短距离(默认)
‘average’ 无权平均距离
‘centroid’ 重心距离
‘complete’ 最大距离
‘median’ 赋权重心距离
‘ward’ 离差平方和方法
‘weighted’ 赋权平均距离

(三)cluster

​ 使用方法:T = cluster(Z, ‘cutoff’, c)

​ 表示将由linkage产生的信息矩阵Z分成c类,其中:

  • Z为linkage函数生成的 (m−1)×3(m-1)\times3(m−1)×3 矩阵
  • c 表示分成类的数量
  • T为长度为 mmm 的列向量,其中每行对应着X中的行(样本),T中数字相同的为同一类

(四)dendrogram

​ 使用方法(常用):

  • H = dendrogram(Z, P)
  • H = dendrogram(Z, P, ‘ColorThreshold’, cutoff)

表示画出由linkage产生的信息矩阵Z对应的聚类树状图。其中:

  • Z为linkage函数生成的 (m−1)×3(m-1)\times3(m−1)×3 矩阵
  • P为树状图显示的最大基础类数量(结点数量),默认值为30,0表示全部画出
  • ‘ColorThreshold’ 表示不同类显示不同颜色
  • cutoff与’ColorThreshold’ 配合使用,表示不同颜色类的最小距离

举例

(一)

clc, clear;  % 清除页面和工作区
a = [1,0;1,1;3,2;4,3;2,5]; % 5组样本
Y = pdist(a);   % 计算两两样本之间的欧式距离
Z = linkage(Y); % 使用最短距离算法生成具有层次结构的聚类树
T = cluster(Z,3);  % 将聚类树分成3类
H = dendrogram(Z,0);   % 将聚类树Z全部画出

得到下聚类图:

(二)

clc, clear;  % 清除页面和工作区
a = [1,0;1,1;3,2;4,3;2,5]; % 5组样本
Y = pdist(a);   % 计算两两样本之间的欧式距离
Z = linkage(Y); % 使用最短距离算法生成具有层次结构的聚类树
T = cluster(Z,3);  % 将聚类树分成3类
cutoff = median([Z(end-2,3) Z(end-1,3)]);  % 让其最小距离在倒数第二三行中,其取倒数第二行,即分成三类
H = dendrogram(Z,0,'ColorThreshold',cutoff);% 将Z带不同颜色画出

得到下聚类图:


参考资料:
[1] 司守奎, 孙兆亮. 数学建模算法与应用[M].北京:国防工业出版社,2020:2.

Matlab聚类分析相关函数相关推荐

  1. Matlab聚类分析_层次聚类+kmeans聚类等

    Matlab提供了两种方法进行聚类分析. 一种是利用 clusterdata函数对样本数据进行一次聚类,其缺点为可供用户选择的面较窄,不能更改距离的计算方法: 另一种是分步聚类:(1)找到数据集合中变 ...

  2. Matlab聚类分析(Clusternbsp;Ana…

    原文地址:Matlab聚类分析(Cluster Analyses)作者:朗朗天下   Matlab提供系列函数用于聚类分析,归纳起来具体方法有如下:   方法一:直接聚类,利用clusterdata函 ...

  3. Matlab聚类分析(Cluster Analyses)

    cited from:来源 总括 Matlab提供系列函数用于聚类分析,归纳起来具体方法有如下: 方法一: 直接聚类,利用clusterdata函数对样本数据进行一次聚类,其缺点为可供用户选择的面较窄 ...

  4. 聚类分析matlab检验,「matlab聚类分析」聚类分析的Matlab 程序—系统聚类(附有案例分析) - 金橙教程网...

    matlab聚类分析 聚类分析的Matlab 程序-系统聚类 (1)计算数据集每对元素之间的距离,对应函数为pdistw. 调用格式:Y=pdist(X),Y=pdist(X,'metric'), Y ...

  5. 【数字信号处理】相关函数应用 ( 使用 matlab 计算相关函数 )

    文章目录 一.相关函数应用场景 1.生成高斯白噪声 2.信噪比 SNR 3.根据信噪比 SNR 求信号幅度 4.产生单载波信号及最终信号 5.求自相关函数及功率 6.matlab 完整代码 一.相关函 ...

  6. matlab icol,Matlab 图像处理相关函数命令大全

    Matlab 图像处理相关函数命令大全 一.通用函数: colorbar 显示彩色条 语法:colorbar \ colorbar('vert') \ colorbar('horiz') \ colo ...

  7. matlab水壶图形,[转载]Matlab 图像处理相关函数命令大全

    Matlab 图像处理相关函数命令大全 一.通用函数: colorbar 显示彩色条 语法:colorbar colorbar('vert') colorbar('horiz') colorbar(h ...

  8. matlab聚类分析实例的博客,基于Matlab的模糊聚类分析及其应用 含实例应用.pptx

    基于Matlab的模糊聚类分析及其应用 含实例应用 1;;3;1.预备知识;定义一:(模糊)聚类分析 在科学技术,经济管理中常常需要按一定的标准(相似程度或亲疏关系)进行分类.对所研究的事物按一定标准 ...

  9. MATLAB聚类分析(Cluster Analysis)

    使用环境:MATLAB2016a.MATLAB2010a 聚类分析是一种无监督式学习,不像回归分析等需要Inputs 和 Targets ,聚类分析是只通过提供一组数据实现分类的算法.下面给出本人在学 ...

  10. MATLAB聚类分析--------2019/8/22

    聚类分析 定义: 是对多个样本进行定量分析的多元统计分析方法. 聚类分析={Q型聚类分析:对样本进行分类R型聚类分析:对指标进行分类聚类分析= \begin{cases} Q型聚类分析 :对样本进行分 ...

最新文章

  1. 运营商级网络地址转换(LSN/CGN)方案介绍
  2. mixed content 混合内容
  3. Linux学习之创建子进程
  4. java postconstruct_java的@PostConstruct注解
  5. c 程序设计语言西电科大,西安电子科技大学
  6. 学MFC的九九八十一难
  7. python从入门到精通需要多久-python学习从入门到精通要多久
  8. FutureWarning: Passing (type 1) or 1type as a synonym of type is deprecated in a future vers 的解决
  9. hash ruby 定义 嵌套_【译】rails的嵌套属性(Nested Attributes)使用
  10. messagedigest 图片加密_MessageDigest来实现数据加密
  11. editplus php格式化,让Editplus自动格式化css和js
  12. 【线性代数】P7 方阵的行列式伴随矩阵
  13. 计划的主体部分应有哪些内容_计划练习题
  14. mac 下安装swoole
  15. mfc opengl 三维地形图_深圳pmax巨影三维扫描仪
  16. 【微信小程序】手把手教你注册开发账号、安装开发工具、使用开发工具
  17. webapp新建文件没有JSP问题和IDEA中web.xml的<servlet-name>名字一样还飘红的问题
  18. OUC软件开发实验5
  19. Au入门系列之一:认识 Audition
  20. 用Python读红楼梦之——一、词云绘制

热门文章

  1. canvas+websocket+vue做一个你画我猜小游戏
  2. 小米盒子共享电脑文件 服务器,小米盒子3S访问局域网电脑共享安装软件和观看视频的方法...
  3. 一文读懂品质体系认证,学会判断 PCB 板厂生产资质
  4. pom文件中配置repositories
  5. java开发一个银行系统_java实现银行管理系统
  6. Java网络编程之InetAddress类详解,URL和URI的区别,URLDecoder和URLEncoder,IPv6和IPv4区别,IPv6的三种表示方法
  7. oracle startup open ora 03113,Oracle 11g startup时报ORA-03113通信通道的文件结尾
  8. SNMP协议-SNMP TRAP
  9. 压力换算公斤单位换算_压力与重量换算(公斤换算压力)
  10. 第十三届蓝桥杯省赛模拟赛题解(2022年第四次模拟赛)C/C++