資源簡介
模糊聚類分析原始代碼,如果需要閾值確定的matlab代碼的話可以聯系

代碼片段和文件信息
function?F_JlDtjl(R)%定義函數
%模糊聚類分析動態(tài)聚類
%R模糊相似矩陣
[mn]=size(R);%獲得矩陣的行列數
if(m~=n|m==0)return;end
for(i=1:n)R(ii)=1;%修正錯誤
????for(j=i+1:n)
????????if(R(ij)<0)R(ij)=0;elseif(R(ij)>1)R(ij)=1;end
????????R(ij)=round(10000*R(ij))/10000;%保留4位小數
????????R(ji)=R(ij);
????end
end
js0=0;
while(1)%求傳遞閉包
????R1=Max_Min(RR);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(ij)==lmd(x))pd=0;break;end;end
????????????if(pd)k=k+1;lmd(k)=R(ij);end
????????end;end
????for(i=1:k-1)for(j=i+1:k)if(lmd(i) ????????????????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(ij)>=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(ij)>=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=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(ij)>=lmd(x))js=js+1;Sz(js)=j;end;end
????????????????flsz(x)=flsz(x)+1;Sz0(flsz(x))=js-y;
????????????end
????????end
????????js0=1;
????????for(i=1:flsz(x))y=1;
????????????for(j=1:flsz(x))
????????????????if(Sz(y)==xhsz(js0))flqksz(xi)=Sz0(j);js0=js0+Sz0(j);break;end
????????????????y=y+Sz0(j);
????????????end
????????end
????end
????F_dtjltx=figure(‘name‘‘動態(tài)聚類圖‘‘color‘‘w‘);
????axis(‘off‘);
????Kd=30;Gd=40;y=fl*Gd+Gd;lx=80;
????text(24y+Gd/2‘λ‘);
????for(i=1:n)
????????text(lx-5+i*Kd-0.4*Kd*(xhsz(i)>9)y+Gd/2int2str(xhsz(i)));
????????line([lx+i*Kdlx+i*Kd][yy-Gd]);
????????linesz(i)=lx+i*Kd;
????end
????text(lx*1.5+i*Kdy+Gd/2‘分類數‘);
????y=y-Gd;
????for(x=1:fl)
????????text(8y-Gd/2num2str(lmd(x)));
????????js0=1;js1=0;
????????if(x==1)
????????????for(i=1:flsz(x))
????????????????js1=flqksz(xi)-1;
????????????????if(js1)line([linesz(js0)linesz(js0+js1)][yy]);end
????????????????line([(linesz(js0+js1)+linesz(js0))/2(linesz(js0+js1)+linesz(js0))/2
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????3823??2011-09-09?02:52??模糊聚類分析\F_JlDtjl.m
?????文件????????193??2011-09-09?02:52??模糊聚類分析\F_Jlfx.m
?????文件???????4209??2011-09-08?14:29??模糊聚類分析\F_JlR.m
?????文件????????651??2011-09-08?13:39??模糊聚類分析\F_JlSjBzh.m
?????文件????????424??2011-09-08?14:17??模糊聚類分析\Max_Min.m
?????目錄??????????0??2012-10-09?18:56??模糊聚類分析
-----------?---------??----------?-----??----
?????????????????9300????????????????????6
評論
共有 條評論