模糊聚类分析步骤.docx
《模糊聚类分析步骤.docx》由会员分享,可在线阅读,更多相关《模糊聚类分析步骤.docx(11页珍藏版)》请在冰豆网上搜索。
![模糊聚类分析步骤.docx](https://file1.bdocx.com/fileroot1/2022-11/27/ebd52a65-2318-405a-ba53-aae45b49bff1/ebd52a65-2318-405a-ba53-aae45b49bff11.gif)
模糊聚类分析步骤
模糊聚类分析步骤
LT
原始数据矩阵:
(重要定理:
设R
F(X
X)是相似关系(即R是自反、对称模糊关系),则e(R)=t(R),即模糊相似关系的传递闭包就是它的等价闭包。
)
Y的传递闭包(即Y的等价矩阵):
求
截矩阵,在程序中我用的k代替了
。
K=1时,x1,x2,x3,…x11,各成一类,将11个雨量站分成11类。
K=0.9095时,将11个雨量站分为10类,X8,X11为一类,其余各自一类。
分8类,将x2,x5,x8,x11分一类,其余各自一类
分6类,x2x3,x5,x8,x9x11为一类,其余各自一类。
分4类,x1,x2,x3,x5,x7,x8,x9x11为一类,其余各自一类。
分4类,x1,x3x2x7x8x9x11为一类,x2x4x5为一类,x6一类,x10一类。
分3类,x2x4x5x6为一类,x1x3x7x8x9x11一类,x10一类。
分2类,x2x4x5x6x10一类,x1x3x7x8x9x11一类
分2类,x1x2x4x5x6x10一类,x3x8x9x11一类.
分1类。
程序一:
标准化矩阵:
functionY=bzh1(X)
[a,b]=size(X);
C=max(X);
D=min(X);
Y=zeros(a,b);
fori=1:
a
forj=1:
b
Y(i,j)=(X(i,j)-D(j))/(C(j)-D(j));%平移极差变化进行数据标准化
end
end
fprintf('标准化矩阵如下:
Y=\n');
disp(Y)
end
程序二:
求模糊相似矩阵:
functionR=biaod2(Y,c)
[a,b]=size(Y);
Z=zeros(a);
R=zeros(a);
fori=1:
a
forj=1:
a
fork=1:
b
Z(i,j)=abs(Y(i,k)-Y(j,k))+Z(i,j);
R(i,j)=1-c*Z(i,j);%绝对值减数法--欧氏距离求模糊相似矩阵
end
end
end
fprintf('模糊相似矩阵如下:
R=\n');
disp(R)
end
程序三:
计算传递闭包:
functionB=cd3(R)
a=size(R);
B=zeros(a);
flag=0;
whileflag==0
fori=1:
a
forj=1:
a
fork=1:
a
B(i,j)=max(min(R(i,k),R(k,j)),B(i,j));%R与R内积,先取小再取大
end
end
end
ifB==R
flag=1;
else
R=B;%循环计算R传递闭包
end
end
程序四:
求
截矩阵:
function[Dk]=jjz4(B)
L=unique(B)';
a=size(B);
D=zeros(a);
form=length(L):
-1:
1
k=L(m);
fori=1:
a
forj=1:
a
ifB(i,j)>=k
D(i,j)=1;
elseD(i,j)=0;%求?
截距阵,当bij≥?
时,bij(?
)=1;当bij<?
时,bij(?
)=0
end
end
end
fprintf('当分类系数k=:
\n');
disp(L(m));
fprintf('所得截距阵为:
\n');
disp(D);
end