TOPSIS概念
具体步骤
- 将原始矩阵正向化
- 正向化矩阵标准化
- 计算得分并归一化
代码整理
%% 第一步:把数据复制到工作区,并将这个矩阵命名为x
% (1)在工作区右键,点击新建(Ctrl+N),输入变量名称为x
% (2)Excel中复制数据,再回到Excel中右键,点击粘贴Excel数据,
% (3)关掉这个窗口,点击x变量,右键另存为,保存为mat文件(下次就不用复制粘贴了,只需使用load命令即可加载数据)
% (4)注意,代码和数据要放在同一个目录下
clear;clc
load data_water_quality.mat % 此处可修改
%% 第二步:判断是否需要正向化
[n,m] = size(X);
disp(['共有'num2str(n)'个评价对象,'num2str(m)'个评价指标']);
Judge = input (['这'num2str(m)'个指标是否需要经过正向化处理,需要请输入1,不需要请输入0:']);
if Judge == 1
Position = input('请输入需要正向化处理的指标所在的列,例如第2,3,6三列需要处理,则输入[2,3,6]: ');%[