数学建模——聚类

目录

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
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值