3-秩和比

%求回归方程
clc, clear
%x1,...,x6的数据和权重数据
% aw = xlsread('E:\a-建模\第六轮\结果\附件2.汽泵前置泵部分监测数据.xls', 2,'J3:P3603');
aw = xlsread('E:\a-建模\第六轮\结果\附件3.汽轮机本体部分监测数据.xlsx', 2,'A17:X5938');
% aw = xlsread('E:\a-建模\第六轮\结果\附件4.一次风机部分监测数据.xls', 2,'L21:P3412');
%把x1,...,x6的数据和权重数据保存在纯文本文件zhb.txt中
w=aw(end,:); %提取权重向量
a=aw([1:end-1],:); %提取指标数据
a(:,[1,3])=-a(:,[1,3]); %把成本型指标转换成效益型指标,针对附件三
a(:,:) = -a(:,:);
ra=tiedrank(a) %对每个指标值分别编秩,即对a的每一列分别编秩
[n,m]=size(ra); %计算矩阵sa的维数
RSR=mean(ra,2)/n  %计算秩和比
W=repmat(w,[n,1]);
WRSR=m*mean(ra.*W,2)/n  %计算加权秩和比
[sWRSR, ind] = sort(WRSR);
p=[1:n]/n;    %计算累积频率
p(end)=1-1/(4*n) %修正最后一个累积频率,最后一个累积频率按1-1/(4*n)估计
Probit=norminv(p,0,1)+5  %计算标准正态分布的p分位数+5
X=[ones(n,1),Probit'];  %构造一元线性回归分析的数据矩阵
[ab,abint,r,rint,stats]=regress(sWRSR,X)  %一元线性回归分析

WRSRfit=ab(1)+ab(2)*Probit  %计算WRNR的估计值
% [sWRSRfit,ind]=sort(WRSRfit,'descend')  %对WRNR的估计值按照从大到小排序
myp = Probit';
myw = sort(WRSR);

%方程检验
yuanshi = [0.754084649	0.829721651	0.734280548	0.733794539	0.744495448	0.744385963	0.72802354	0.661016138	0.89500779	0.895390987];
de = [0.701423111	0.783380847	0.678977312	0.67850058	0.689637931	0.689145903	0.674474351	0.630014879	0.875795584	0.879279344];
can = de - yuanshi;
xiangdui = (can) ./ yuanshi

  

猜你喜欢

转载自www.cnblogs.com/zhumengdexiaobai/p/9491530.html