综合评价作业1
按出院人数、病床使用率、平均住院日、病死率、危重病人抢救成功率、治愈好转率和院内感染率等7个指标对某儿童医院2018~2022年5个年度的医疗质量进行纵向综合评价(TOPSIS法)。原始数据如下:
方法一:不加权重
% 原始数据
data = [21584 76.7 7.3 1.01 78.3 97.5 2.0
24372 86.3 7.4 0.80 91.1 98.0 2.0
22041 81.8 7.3 0.62 91.1 97.3 3.2
21115 84.5 6.9 0.60 90.2 97.7 2.9
24633 90.3 6.9 0.25 95.5 97.9 3.6];
% 确定正向和负向指标
I = [1, 2 , 5 ,6]; % 正向
J = [3,4, 7]; % 负向
% 趋同化(负向指标取倒数)
for j = J
data(:,j) = 1 ./ data(:,j);
end
% 归一化
[m,n] = size(data);
for j = 1:n
V(:,j) = data(:,j)/sqrt(sum(data(:,j).^2));
end
% 确定正负理想解
V_best = max(V,[],1);
V_worst = min(V,[],1);
% 计算欧式距离
D_p = sqrt(sum((V - repmat(V_best,m,1)).^2,2));
D_n = sqrt(sum((V - repmat(V_worst,m,1)).^2,2));
% 计算相对接近度
C = D_n./(D_p+D_n);
% 排序
[~,rank] = sort(C,'descend');
% 结果输出
for i = 1:m
fprintf('%d年医疗质量排名第%d\n',2018+rank(i)-1,i);
end
方法二:加权重(熵值法)
% 原始数据
data = [21584 76.7 7.3 1.01 78.3 97.5 2.0
24372 86.3 7.4 0.80 91.1 98.0 2.0
22041 81.8 7.3 0.62 91.1 97.3 3.2
21115 84.5 6.9 0.60 90.2 97.7 2.9
24633 90.3 6.9 0.25 95.5 97.9 3.6];
% 确定正向和负向指标
I = [1, 2 , 5 ,6]; % 正向
J = [3,4, 7]; % 负向
% 趋同化(负向指标取倒数)
for j = J
data(:,j) = 1 ./ data(:,j);
end
% 归一化
[m,n] = size(data);
for j = 1:n
data_norm(:,j) = data(:,j)/sqrt(sum(data(:,j).^2));
end
% 计算熵值法权重向量
p = data_norm./repmat(sum(data_norm),m,1);
e = -sum(p.*log(p),1)/log(m);
w = (1-e)./sum(1-e);
% 构造加权规范化矩阵
V = repmat(w,m,1).*data_norm;
% 确定正负理想解
V_best = max(V,[],1);
V_worst = min(V,[],1);
% 计算欧式距离
D_p = sqrt(sum((V - repmat(V_best,m,1)).^2,2));
D_n = sqrt(sum((V - repmat(V_worst,m,1)).^2,2));
% 计算相对接近度
C = D_n./(D_p+D_n);
% 排序
[~,rank] = sort(C,'descend');
% 结果输出
for i = 1:m
fprintf('%d年医疗质量排名第%d\n',2018+rank(i)-1,i);
end