下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、WORD格式.可编辑§ 8 利用Matlab和SPS瞅件实现聚类分析1 .用Matlab编程实现运用Matlab中的一些基本矩阵计算方法,通过自己编程实现聚类算法,在此只讨论根据最短距离规则聚类的方法。调用函数:minl.m求矩阵最小值,返回最小值所在行和列以及值的大小min2.m比较两数大小,返回较小值stdl.m用极差标准化法标准化矩阵dsl.m用绝对值距离法求距离矩阵cluster.m应用最短距离聚类法进行聚类分析printl.m调用各子函数,显示聚类结果聚类分析算法假设距离矩阵为vector,a阶,矩阵中最大值为max;令矩阵上三角元素等于max聚类次数=a-1,以下步骤作a
2、-1次循环:求改变后矩阵的阶数,计作c专业知识整理分享WORD格式.可编辑求矩阵最小值,返回最小值所在行e和列f以及值的大小gforl=1:c,为vector(c+1,l)赋值,产生新类令第c+1列元素,第e行和第f行所有元素为,第e列和第f列所有元素为max源程序如下:%std1.m,用极差标准化法标准化矩阵functionstd=std1(vector)max=max(vector);%对列求最大值min=min(vector);a,b=size(vector);%矩阵大小,a为行数,b为列数fori=1:aforj=1:bstd(i,j)=(vector(i,j)-min(j)/(max
3、(j)-min(j);endend%ds1.m,用绝对值法求距离functiond=ds1(vector);a,b=size(vector);d=zeros(a);fori=1:aforj=1:afork=1:bd(i,j)=d(i,j)+abs(vector(i,k)-vector(j,k);endendendfprintf('绝对值距离矩阵如下:n');disp(d)%min1.m,求矩阵中最小值,并返回行列数及其值functionv1,v2,v3=min1(vector);%v1为行数,v2为列数,v3为其值v,v2=min(min(vector');v,v1=m
4、in(min(vector);v3=min(min(vector);专业知识整理分享WORD格式.可编辑%min2.m,比较两数大小,返回较小的值functionv1=min(v2,v3);ifv2>v3v1=v3;elsev1=v2;end%cluster.m,最短距离聚类法functionresult=cluster(vector);a,b=size(vector);max=max(max(vector);fori=1:aforj=i:bvector(i,j)=max;endend;fork=1:(b-1)c,d=size(vector);fprintf('第欧聚类:n
5、9;,k);e,f,g=min1(vector);fprintf('最小值=%g,将第%g区和第%g区并为一类,记作G%gnn',g,e,f,c+1);forl=1:cifl<=min2(e,f)vector(c+1,l)=min2(vector(e,l),vector(f,l);elsevector(c+1,l)=min2(vector(l,e),vector(l,f);endend;vector(1:c+1,c+1)=max;vector(1:c+1,e)=max;vector(1:c+1,f)=max;vector(e,1:c+1)=max;vector(f,1:c
6、+1)=max;end%print1,调用各子函数functionprint=print1(filename,a,b);%a为地区个数,b为指标数fid=fopen(filename,'r')vector=fscanf(fid,'%g',ab);fprintf('标准化结果如下:n')v1=std1(vector)v2=ds1(v1);cluster(v2);专业知识整理分享WORD格式.可编辑%输出结果print1('fname',9,7)2 .直接调用Matlab函数实现2.1 调用函数层次聚类法(HierarchicalCl
7、ustering)的计算步骤:计算n个样本两两间的距离dj,记D构造n个类,每个类只包含一个样本;合并距离最近的两类为一新类;计算新类与当前各类的距离;若类的个数等于1,转到5);否则回3);画聚类图;决定类的个数和类;Matlab软件对系统聚类法的实现(调用函数说明):cluster从连接输出(linkage)中创建聚类clusterdata从数据集合(x)中创建聚类dendrogram画系统树状图linkage连接数据集中的目标为二元群的层次树专业知识整理分享WORD格式.可编辑pdist_计算数据集合中两两元素间的距离(向量)squareform将距离的输出向量形式定格为矩阵形式zsco
8、re对数据矩阵X进行标准化处理各种命令解释(1) T=clusterdata(X,cutoff)其中X为数据矩阵,cutoff是创建聚类的临界值。即表示欲分成几类。以上语句等价与以下几句命令:Y=pdist(X,'euclid')Z=linkage(Y,'single')T=cluster(Z,cutoff)以上三组命令调用灵活,可以自由选择组合方法!T=cluster(Z,cutoff)从逐级聚类树中构造聚类,其中Z是由语句likage产生的(n-1)刈阶矩阵,cutoff是创建聚类的临界值。(3) Z=linkage(Y)Z=linkage(Y,'m
9、ethod')创建逐级聚类树,其中Y是由语句pdist产生的n(n-1)/2阶向量,'method'表示用何方法,默认值是欧氏距离(single)。有complete-专业知识整理分享WORD格式.可编辑最长距离法;'average'类平均距离;'centroid-重心法;'ward'递增平方和等。Y=pdist(X)Y=pdist(X,'metric')计算数据集X中两两元素间的距离,'metric'表示使用特定的方法,有欧氏距离euclid'、标准欧氏距离SEuclid'、马氏距
10、离mahal'、明可夫斯基距离Minkowski'等。H=dendrogram(Z)H=dendrogram(Z,p)由likage产生的数据矩阵z画聚类树状图。P是结点数,默认值是30。2.2 举例说明设某地区有八个观测点的数据,样本距离矩阵如表1所示,根据最短距离法聚类分析。%!短距离法系统聚类分析X=7.9039.778.4912.9419.2711.052.0413.29;7.6850.3711.3513.319.2514.592.7514.87;9.4227.938.208.1416.179.421.559.76;9.1627.989.019.3215.999.101.8211.35;10.0628.6410.5210.0516.188.391.9610.81;BX=zscore(X);%标准化数据矩阵专业知识整理分享WORD格式.可编辑Y=pdi
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 《GB-T 22554-2010基于标准样品的线性校准》专题研究报告
- 《GB-T 30872-2014建筑用丙烯酸喷漆铝合金型材》专题研究报告
- 《GB-T 23327-2009机织热熔粘合衬》专题研究报告
- 《宠物鉴赏》课件-猫的起源与历史
- 2026年甘肃省兰州市单招职业倾向性测试题库含答案详解
- 孕期健康监测管理协议
- 肿瘤浸润淋巴细胞培养技术员岗位考试试卷及答案
- 2026年护理服务工作实施方案与计划(3篇)
- 青少年痤疮的饮食调护
- 辽宁省2025秋九年级英语全册Unit10You'resupposedtoshakehands课时2SectionA(3a-3c)课件新版人教新目标版
- 钢筋棚拆除合同范本
- 断绝亲子协议书
- 【MOOC答案】《光纤光学》(华中科技大学)章节作业期末慕课答案
- 小学生班级管理交流课件
- DB21T 3722.7-2025高标准农田建设指南 第7部分:高标准农田工程施工质量评定规范
- 近八年宁夏中考数学试卷真题及答案2024
- 超星尔雅学习通《带您走进西藏(西藏民族大学)》2025章节测试附答案
- 超星尔雅学习通《科学计算与MATLAB语言(中南大学)》2025章节测试附答案
- 绿色简约风王阳明传知行合一
- 【MOOC】宇宙简史-南京大学 中国大学慕课MOOC答案
- 重精管理培训
评论
0/150
提交评论