数学建模——聚类

目录

Q型聚类

R型聚类

其他


Q型聚类

对样本进行分类称为Q型聚类分析,用距离来度量样本点之间的相似程度,两组样本点之间的距离常用欧氏距离进行度量,注意如果量纲不一样,则要进行标准化处理。马氏距离则不需要考虑量纲。两个样本类之间的距离也有定义

mandist(矩阵)该函数用于求矩阵向量之间的两两绝对值距离

Y=pdist(X) 返回 X 中行与行观测值之间的欧几里德距离。返回值Y是一个行向量,用squareform(Y)转换为方阵,行向量Y其实就是矩阵形式的下三角矩阵的值。

tril(矩阵)可以截取下三角矩阵,nonzeros(矩阵)去除矩阵中零元素,非零元素按列排列,unique(矩阵)可以去掉重复的非零元素,linkage()函数可以求聚类树,参数应该是距离的行向量,dendrogram(z,num);画聚类图,num是节点数,默认最多30

 例子:

w110
w211
w332
w4
w524

对w进行分类

采用绝对值距离为分类依据,理论分析得出距离:

 画出聚类图和二叉树图:

clc,clear
a = [1,0;1,1;3,2;4,3;2,5];
d = pdist(a,'cityblock');%计算样本点直接两两距离行向量
z = linkage(d);
dendrogram(z);%画出聚类图
T = cluster(z,'maxclust',3)%将分类分为三类
%% 也可以:
z = linkage(a,'single','cityblock');%single指类间距离,后者是样本点距离

 运算结果:

z =

     1     2     1
     3     4     2
     6     7     3
     5     8     4

意思是:1,2样本点划分为一类,是h6,3,4划分一类h7,h6、h7划分一类为h8,h8和样本点5划分一类。z第三列包含了两两行对象间连接距离

T =

     1
     1
     2
     2
     3

T划分为三类,样本点1,2分为1类...

R型聚类

对变量聚类,进而可以找出影响系统的主要因素,常用的变量相似性度量有两种①相关系数②夹角余弦,采用相关系数是最多的

 变量聚类法常用的有最长距离法和最短距离法

例子:

给出14个变量之间的相关系数,对这14个变量进行分类

clc,clear
a = readmatrix('data.txt');
a(isnan(a)) = 0;
d = 1-abs(a);               %进行数据变换,把相关系数转化为距离
d = tril(d);                %提出下三角矩阵
b = nonzeros(d);            %除去0
b = b';                     %化为行向量
z = linkage(b,'complete');  %按最长距离法聚类
y = cluster(z,'maxclust',2);%把变量划分为2类
ind1 = find(y==1)           %显示第一类对应的变量标号
ind2 = find(y==2)
h = dendrogram(z);          %画出聚类图

其他

A = zsore(x)对数据矩阵进行标准化处理,处理的方式为:

B = corrcoef(A) 返回 A 的相关系数的矩阵

  • 1
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
数学建模中,使用Python进行聚类分析可以通过导入相关库来实现。首先,我们需要导入numpy、matplotlib、scipy、xlrd、pandas、sklearn等库来支持聚类分析的各个环节。聚类分析是一种研究问题的多元统计方法,也可以称为群分析。它的目的是将具有相似元素的集合聚集到一类中。聚类分析可以采用定性研究和定量研究的方法,通过选取共同指标,分析元素指标值之间的差距,从而实现分类的目的。在聚类分析中,常用的分类方法有Q型分类和R型分类。Q型分类是对样品进行聚类,而R型分类是对指标进行聚类。在使用Python进行聚类分析时,我们重点讲解Q型分类。聚类分析的一般步骤包括:数据准备、选择合适的聚类算法、确定聚类数目、进行聚类分析、评估聚类结果。这些步骤可以帮助我们在数学建模中使用Python进行聚类分析。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [【数学建模聚类分析——python实现](https://blog.csdn.net/m0_56120502/article/details/124509024)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值