CRITIC matlab
时间: 2023-08-27 12:21:09 浏览: 46
这段代码是用MATLAB实现CRITIC法进行数据分析的。CRITIC法是一种常用的多指标决策方法,用于帮助决策者评估不同指标的重要性和对决策结果的贡献程度。下面是这段代码的具体步骤:
1. 导入数据: 代码使用xlsread函数读取名为"CRITIC.xlsx"的数据文件。
2. 指标正向化和标准化: 代码中的data1是用于存储指标正向化和标准化处理后的数据。首先,将负向指标进行标准化处理,其中第三个指标被定义为负向指标。对于负向指标,使用最大最小值标准化方法将其转化为0-1之间的数值。然后,将剩余的正向指标进行标准化处理,同样使用最大最小值标准化方法。
3. 对比性计算: 代码中的the变量存储了数据的标准差,用于计算指标的对比性。标准差越大,说明数据的变化范围越大,对决策结果的影响越大。
4. 矛盾性计算: 代码中的r变量存储了指标之间的相关系数矩阵,用于计算指标的矛盾性。相关系数越小,说明指标之间的相互关联程度越低,对决策结果的影响越大。
5. 信息承载量计算: 代码中的f变量是指标的信息承载量,通过计算1减去相关系数的和得到。
6. 权重计算: 代码中的c变量是指标的信息承载量与标准差的乘积,用于计算指标的权重。将信息承载量除以所有指标权重之和,得到每个指标的权重。
7. 得分计算: 代码中的s变量是每个样本的得分,通过将数据乘以权重并对每个样本求和得到。
8. 百分制评分: 代码中的Score变量是每个样本的百分制评分,通过将得分归一化到0-100之间得到。
最后,代码使用fprintf函数输出了不同银行的百分制评分。和两个部分,分别是负向指标标准化处理和剩余指标的正向标准化处理。中是负向指标标准化处理的代码,中是剩余指标的正向标准化处理的代码。这两部分是在整个代码的处理过程中的两个重要步骤。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* *2* *3* [CRITIC法之matlab](https://blog.csdn.net/qq_25990967/article/details/122810271)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 100%"]
[ .reference_list ]