最短距离聚类的matlab实现-1(含聚类图-含距离计算).doc

最短距离聚类的matlab实现-1(含聚类图-含距离计算).doc

ID:62152749

大小:46.50 KB

页数:5页

时间:2021-04-19

最短距离聚类的matlab实现-1(含聚类图-含距离计算).doc_第1页
最短距离聚类的matlab实现-1(含聚类图-含距离计算).doc_第2页
最短距离聚类的matlab实现-1(含聚类图-含距离计算).doc_第3页
最短距离聚类的matlab实现-1(含聚类图-含距离计算).doc_第4页
最短距离聚类的matlab实现-1(含聚类图-含距离计算).doc_第5页
资源描述:

《最短距离聚类的matlab实现-1(含聚类图-含距离计算).doc》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、个人收集整理勿做商业用途最短距离聚类的matlab实现-1【2013-5-21更新】说明:正文中命令部分可以直接在Matlab中运行,作者(Yangfd09)于2013-5-21 19:15:50在MATLAB R2009a(7.8.0.347)中运行通过%最短距离聚类(含距离计算,含聚类图)%说明:此程序的优点在于每一步都是自己编写的,很少用matlab现成的指令,%所以更适合于初学者,有助于理解各种标准化方法和距离计算方法。%程序包含了极差标准化(两种方法)、中心化、标准差标准化、总和标准化和极大值标准化等标准化方法,%以及绝对值距离

2、、欧氏距离、明科夫斯基距离和切比雪夫距离等距离计算方法。%==========================>>导入数据<<==============================%变量名为test(新建一个以test变量,双击进入VariableEditor界面,将数据复制进去即可)%数据要求:m行n列,m为要素个数,n为区域个数(待聚类变量)。%   具体参见末页测试数据。testdata=test;%============================>>标准化<<=============================

3、==%变量初始化,m用来寻找每行的最大值,n找最小值,s记录每行数据的和[M,N]=size(testdata);m=zeros(1,M);n=9999*ones(1,M);s=zeros(1,M);eq=zeros(1,M);%为m、n和s赋值for i=1:M  forj=1:N iftestdata(i,j)>=m(i)     m(i)=testdata(i,j);   end iftestdata(i,j)<=n(i) n(i)=testdata(i,j);    end   s(i)=s(i)+testdata(i,j);en

4、d个人收集整理勿做商业用途 eq(i)=s(i)/N;end%sigma0是离差平方和,sigma是标准差sigma0=zeros(M);fori=1:M  forj=1:N   sigma0(i)=sigma0(i)+(testdata(i,j)-eq(i))^2;endendsigma=sqrt(sigma0/N);jicha=m-n;%极差标准化(两种方法)、中心化、标准差标准化、总和标准化和极大值标准化。he=sum(testdata,2);testdata_jc0=zeros(M,N);testdata_jc1=zeros(M,

5、N);testdata_zx=zeros(M,N);testdata_std=zeros(M,N);testdata_zonghe=zeros(M,N);testdata_jdzh=zeros(M,N);for i=1:M for j=1:N  testdata_jc1(i,j)=(testdata(i,j)-n(i))/jicha(i);   testdata_jc0(i,j)=testdata(i,j)/jicha(i);  testdata_zx(i,j)=testdata(i,j)-s(i)/N; testdata_std(i,j

6、)=(testdata(i,j)-eq(i))/sigma(i);   testdata_zonghe(i,j)=testdata(i,j)./he(i);    testdata_jdzh(i,j)=testdata(i,j)/m(i); endend%=================>>选择标准化方式,计算距离<<=========================test=testdata_jc1'; %把此处修改为你需要的标准化方式,注意不要删掉转置符号“ ’”%testdata_jc1:极差标准化,分子减去最小值;testdat

7、a_jc0:极差标准化,不减最小值% testdata_zx:中心标准化;testdata_std:标准化擦标准化;%testdata_zonghe:总和标准化;testdata_jdzh:极大值标准化。[M,N]=size(test);a='?';d_abs=zeros(M,M);d_ou0=zeros(M,M);d_qie=zeros(M,M);d_qie0=zeros(1,N);%===>>如果需要计算明科夫斯基距离,把对应程序行前面的“%”删去即可%if(1)%a=input('计算明可夫斯基距离?(Y/N)','s');%  i

8、f(a=='Y'

9、

10、a=='y')个人收集整理勿做商业用途% d_ming0=zeros(M,M);%  p=input('输入参数p:','s');% p=str2double(p);%  

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。