Python综合评价模型(八)熵权法

这篇具有很好参考价值的文章主要介绍了Python综合评价模型(八)熵权法。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。


熵权法是根据评价指标的变异程度(差异系数)来分配权重,评价指标变异程度越大,所赋权重就越大,并以此对评价对象进行综合评价的方法

第一步 导入第三方库和案例数据

import numpy as np
import pandas as pd
#按指定路径导入数据,以“地区”为索引(文件路径需按实际情况更换)
data = pd.read_excel(r'C:/Users/AROUS/Desktop/综合评价数据.xlsx', index_col = '地区')
data

熵权法计算综合得分,Python综合评价,手把手陪你学Python,python,数据分析,pandas

第二步 标准化数据(min-max标准化)

使用min-max标准化方法标准化数据后,各评价指标的最大值为1,最小值为0

正向指标(指标值越大越好)的min-max标准化计算公式为:

y i j = x i j − min ⁡ x i j max ⁡ x i j − min ⁡ x i j ( 1 ≤ i ≤ n , 1 ≤ j ≤ m ) y_{ij} = \frac{x_{ij} - \min{x_{ij}}}{\max{x_{ij}} - \min{x_{ij}}} \quad (1 \leq i \leq n,1 \leq j \leq m) yij=maxxijminxijxijminxij(1in,1jm) n n n为评价对象的个数, m m m为评价指标的个数

负向指标(指标值越小越好)的min-max标准化计算公式为:

y i j = max ⁡ x i j − x i j max ⁡ x i j − min ⁡ x i j ( 1 ≤ i ≤ n , , 1 ≤ j ≤ m ) y_{ij} = \frac{\max{x_{ij}} - x_{ij}}{\max{x_{ij}} - \min{x_{ij}}} \quad (1 \leq i \leq n, , 1 \leq j \leq m) yij=maxxijminxijmaxxijxij(1in,,1jm) n n n为评价对象的个数, m m m为评价指标的个数

#定义正向指标min-max标准化函数
def minmax_p(x): 
    return (x - x.min()) / (x.max() - x.min())
#定义负向指标min-max标准化函数
def minmax_n(x): 
    return (x.max() - x) / (x.max() - x.min())
#使用正向指标min-max标准化函数标准化数据
data_m = data.apply(minmax_p, axis = 0)
data_m

熵权法计算综合得分,Python综合评价,手把手陪你学Python,python,数据分析,pandas

第三步 计算评价指标的特征比重

i i i个评价对象的第 j j j项评价指标的特征比重的计算公式为:

p i j = y i j ∑ i = 1 n y i j p_{ij} = \frac{y_{ij}}{\sum_{i=1}^{n} y_{ij}} pij=i=1nyijyij n n n为评价对象的个数

pij = data_m / data_m.sum()
pij 

熵权法计算综合得分,Python综合评价,手把手陪你学Python,python,数据分析,pandas

第四步 计算评价指标的熵值

j j j项评价指标的熵值的计算公式为:

e j = − 1 ln ⁡ ( n ) ∑ i = 1 n p i j ln ⁡ ( p i j ) e_j = -\frac{1}{\ln(n)} \sum_{i=1}^{n} p_{ij} \ln(p_{ij}) ej=ln(n)1i=1npijln(pij) n n n为评价对象的个数

#把pij中的0替换为一个非零的极小值,避免出现ln(0)的警告
#函数len用于返回对象的长度或元素个数
pij = pij.replace(0, 1e-100)
ei = -1 / np.log(len(data_m)) * np.sum(pij * np.log(pij), axis = 0)
ei

熵权法计算综合得分,Python综合评价,手把手陪你学Python,python,数据分析,pandas

第五步 计算评价指标的差异系数

j j j项评价指标的差异系数的计算公式为:

d j = 1 − e j d_j = 1 - e_j dj=1ej

di = 1 - ei
di

熵权法计算综合得分,Python综合评价,手把手陪你学Python,python,数据分析,pandas

第六步 计算评价指标的权重

#归一化评价指标的差异系数
w = di / di.sum()
w

熵权法计算综合得分,Python综合评价,手把手陪你学Python,python,数据分析,pandas

第七步 计算评价对象的综合得分

data['熵权法得分'] = data_m.dot(w)
data

熵权法计算综合得分,Python综合评价,手把手陪你学Python,python,数据分析,pandas文章来源地址https://www.toymoban.com/news/detail-607607.html

第八步 导出综合评价结果

data.to_excel('熵权法综合评价结果.xlsx', index = True)
下期预告: P y t h o n 综合评价模型(九) C R I T I C 法 \textcolor{RoyalBlue}{下期预告 : Python综合评价模型(九)CRITIC法} 下期预告:Python综合评价模型(九)CRITIC
关注公众号“ T r i H u b 数研社”发送“ 230402 ”获取案例数据和代码 \textcolor{RoyalBlue}{关注公众号“TriHub数研社”发送“230402”获取案例数据和代码} 关注公众号TriHub数研社发送“230402”获取案例数据和代码

到了这里,关于Python综合评价模型(八)熵权法的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 基于熵权法对TOPSIS法模型的修正

    最近在学习数学建模,在B站发现一个特别不错的课程,讲的很全面,常考的算法都有涉及到:清风数学建模 本文将结合熵权法介绍TOPSIS法,并将淡化原理的推导,更侧重于具体应用。 TOPSIS法(优劣解距离法)是一种常用的综合评价方法,能充分利用原始数据的信息,其结果

    2023年04月11日
    浏览(78)
  • topsis算法模型和熵权法使用原理详解

    topsis模型原理: 1.topsis模型介绍 TOPSIS法(Technique for Order Preference by Similarity to Ideal Solution) 可翻译为逼近理想解排序法,国内常简称为优劣解距离法 TOPSIS 法是一种常用的综合评价方法,其能充分利用原始数据的信息, 其结果能精确地反映各评价方案之间的差距。 2.适用范围

    2024年02月04日
    浏览(42)
  • 【建模算法】熵权法(Python实现)

    熵权法是通过寻找数据本身的规律来赋权重的一种方法。 熵是热力学单位,在数学中,信息熵表示事件所包含的信息量的期望。根据定义,对于某项指标,可以用熵值来判断某个指标的离散程度,其熵值越小,指标的离散程度越大,该指标对综合评价的影响(权重)越大。

    2024年02月04日
    浏览(40)
  • 建模笔记——熵权法(Python实现)

    熵权法是一种通过对已知数据的处理,从而获得影响因子权重的方法,其基本思路是根据指标变异性的大小来确定客观权重。 熵权法的优点在于其根据各项指标指标值的变异程度来确定指标权数的,是一种客观赋权法,避免了人为因素带来的偏差。相对那些主观赋值法,精度较

    2024年02月16日
    浏览(44)
  • 【赋权算法】Python实现熵权法

    在开始之前,我们先说一下信息熵的概念。 当一件事情发生,如果是意料之中,那么这个事情就并不能拿来当做茶余饭后的谈资,我们可以说这个事情并没有什么信息和价值。而当一件不可能发生的事情发生的时候,我们可能就会觉得震撼三观,这件事情太Crazy了,带来的信

    2024年02月10日
    浏览(44)
  • 【综合评价分析】熵权算法确定权重 原理+完整MATLAB代码+详细注释+操作实列

    【综合评价分析】 熵权算法 确定权重 原理+完整MATLAB代码+详细注释+操作实列 文章目录 1. 熵权法确定指标权重 (1)构造评价矩阵 Ymn (2)评价矩阵标准化处理 (3)计算指标信息熵值 Mj (4)计算各指标权重 Nj 2.完整代码 2.1 熵权法(正向化指标) 2.2熵权法(负向化指标)

    2024年01月21日
    浏览(43)
  • 数学建模-熵权法

    熵权法:根据数据本身建立评价体系。 什么时候用? 数据全面,缺少文献或主观依据的题目,文献很难帮助我们确定影响水质的哪一个因素最重要,很难告诉我们指标的重要程度如何衡量。追求公平公正。 缺点:难以将数据之外的因素考虑进去 对比(层次分析法、TOPSIS法)

    2024年02月09日
    浏览(47)
  • 熵权法原理及应用

    熵权法原理及应用 熵 :起源于物理学,表示物质微观热运动时的混乱程度,在信息论中是衡量系统无序程度度量值。 熵权法 :根据信息熵的定义,对于某项指标,可以用熵值来判断某个指标的离散程度,其信息熵值越小,指标的 离散程度越大 , 该指标对综合评价的 影响

    2024年02月16日
    浏览(49)
  • 数学建模:熵权法

    🔆 文章首发于我的个人博客:欢迎大佬们来逛逛 构建原始矩阵 D a t a Data D a t a 形状为 m ∗ n m *n m ∗ n ,其中 m m m 为评价对象, n n n 为评价指标。 对 D a t a Data D a t a 矩阵的指标进行 正向化处理 ,得到矩阵 X X X . 计算每一个指标在每一个对象下的所占该指标的比重,然后

    2024年02月10日
    浏览(46)
  • 权重分析——熵权法

    权重分析是通过熵权法对问卷调查的指标的重要性进行权重输出,根据信息熵的定义,对于某项指标,可以用熵值来判断某个指标的离散程度,其信息熵值越小,指标的离散程度越大, 该指标对综合评价的影响(即权重)就越大,如果某项指标的值全部相等,则该指标在综合

    2024年02月16日
    浏览(46)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包