matlab灰色关联度.txt

来自「MATLAB绘制出权值wv和阀值bv确定的误差曲面」· 文本 代码 · 共 60 行

TXT
60
字号
%注意:由于需要,均值化方法采用各组值除以样本的各列平均值
clear;clc;
yangben=[
47.924375 25.168125 827.4105438 330.08875 1045.164375 261.374375
16.3372 6.62 940.2824 709.2752 962.1284 84.874
55.69666667 30.80333333 885.21 275.8066667 1052.42 435.81

]; %样本数据

fangzhen=[
36.27 14.59 836.15 420.41 1011.83 189.54 
64.73 35.63 755.45 331.32 978.5 257.87 
42.44 23.07 846 348.05 1025.4 296.69 
59.34 39.7 794.31 334.63 1016.4 317.27 
52.91 17.14 821.79 306.92 1141.94 122.04 
4.21 4.86 1815.52 2584.68 963.61 0.00 
6.01 2.43 1791.61 2338.17 1278.08 30.87 
3.01 1.58 1220.54 956.14 1244.75 3.91 
25.65 7.42 790.17 328.88 1026.01 92.82 
115.80 27 926.5 350.93 1079.49 544.38 
12.63 8.75 1055.50 1379.00 875.10 1.65 
]; %待判数据

[rows,cols]=size(fangzhen);
p=0.5;    %分辨系数
[m,n]=size(yangben);      
R=[];
for irow=1:rows
     yy=fangzhen(irow,:);
     data=[yy;yangben];
     data_gyh1=mean(yangben)
     for i=1:m+1
         for j=1:n
             data_gyh(i,j)=data(i,j)/data_gyh1(j);
         end
     end
     
     for i=2:m+1
         for j=1:n
             Dij(i-1,j)=abs(data_gyh(1,j)-data_gyh(i,j));
         end
     end
     Dijmax=max(max(Dij));
     Dijmin=min(min(Dij));
     
     for i=1:m
         for j=1:n
             Lij(i,j)=(Dijmin+p*Dijmax)/(Dij(i,j)+p*Dijmax);
         end
     end
     
     LijRowSum=sum(Lij');
     
     for i=1:m
         Rij(i)=LijRowSum(i)/n;
     end
     R=[R;Rij];
end
R

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?