变异系数法matlab代码

function [ w,ave,score] = byxsf( A )
[m,n]=size(A);%m:对象数,n:指标数
v=zeros(1,n);
w=zeros(1,n);
for i=1:n
    v(i)=std(A(:,i))/mean(A(:,i));
end
for i=1:n
   w(i)=v(i)/sum(v);
end
disp('权重为:')
w

score=w(1)*A(:,1)+w(2)*A(:,2);%这部分要根据实际情况修改

disp('得分平均值:')
ave=mean(score)
end

你可能感兴趣的:(变异系数法matlab代码)