matlab应用聚类分析.doc

  1. 1、本文档共5页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
matlab应用聚类分析

1.function[X]=F_JlSjBzh(cs,X) %%模糊聚类分析数据标准化变换 %%X原始数据矩阵;cs=0,不变换;cs=1,标准差变换:cs=2,极差变换 if(cs==0)return;end [n,m]=size(X);%%获得矩阵的行列数 if(cs==1)%%平移·标准差变换 for(k=1:m)xk=0; for(i=1:n)xk=xk+X(i,k);end xk=xk/n;sk=0; for(i=1:n)sk=sk+(X(i,k)-xk)^2;end sk=sqrt(sk/n); for(i=1:n)X(i,k)=(X(i,k)-xk)/sk;end end else%%平移·极差变换 for(k=1:m)xmin=X(1,k);xmax=X(1,k); for(i=1:n) if(xminX(i,k))xmin=X(i,k);end if(xmaxX(i,k))xmax=X(i,k);end end for(i=1:n)X(i,k)=(X(i,k)-xmin)/(xmax-xmin);end end end 2. function F_JlDtjl(R)%%定义函数 %%模糊聚类分析动态聚类 %%R模糊相似矩阵 [m,n]=size(R);%%获得矩阵的行列数 if(m~=n|m==0)return;end for(i=1:n)R(i,i)=1;%%修正错误 for(j=i+1:n) if(R(i,j)0)R(i,j)=0;elseif (R(i,j)1)R(i,j)=1;end R(i,j)=round(10000*R(i,j))/10000;%%保留4位小数 R(j,i)=R(i,j); end end js0=0; while(1)%%求传递闭包 R1=Max_Min(R,R); js0=js0+1; if(R1==R) break; else R=R1;end end lmd(1)=1;k=1; for(i=1:n)for(j=i+1:n)pd=1;%%找出所有不相同的元素 for(x=1:k)if(R(i,j)==lmd(x))pd=0;break;end;end if(pd)k=k+1;lmd(k)=R(i,j);end end;end for(i=1:k-1)for(j=i+1:k)if(lmd(i)lmd(j))%%从大到小排序 x=lmd(j);lmd(j)=lmd(i);lmd(i)=x; end;end;end for(x=1:k)%%按lmd(x)分类,分类数为flsz(x),临时用Sz记录元素序号 js=0;flsz(x)=0; for(i=1:n)pd=1; for(y=1:js)if(Sz(y)==i)pd=0;break;end;end if(pd) for(j=1:n)if(R(i,j)=lmd(x))js=js+1;Sz(js)=j;end;end flsz(x)=flsz(x)+1; end end end for(i=1:k-1)for(j=i+1:k)if(flsz(j)==flsz(i))flsz(j)=0;end;end;end fl=0;%排除相同的分类 for(i=1:k)if(flsz(i))fl=fl+1;lmd(fl)=lmd(i);end;end for(i=1:n)xhsz(i)=i;end for(x=1:fl)%%获得分类情况:对分类元素进行排序 js=0;flsz(x)=0; for(i=1:n)pd=1; for(y=1:js)if(Sz(y)==i)pd=0;break;end;end if(pd)if(js==0)y=0;end for(j=1:n)if(R(i,j)=lmd(x))js=js+1;Sz(js)=j;end;end flsz(x)=flsz(x)+1; Sz0(flsz(x))=js-y; end end js0=0; for(i=1:flsz(x)) for(j=1:Sz0(i))Sz1(j)=Sz(js0+j);end for(j=1:n)for(y=1:Sz0(i))if(xhsz(j)==Sz1(y))js0=js0+1;Sz(js0)=xhsz(j);end;end;end end for(i=1:n)xhsz(i)=Sz(i);end end for(x=1:fl)%%获得分类情况:每一子类的元素个数 js=0;flsz(x)=0; for(i=1:n)pd=

文档评论(0)

xy88118 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档