MCM备赛笔记——熵权法

Key Concept

熵权法是一种基于信息熵概念的权重确定方法,用于多指标决策分析中。信息熵是度量信息量的不确定性或混乱程度的指标,在熵权法中,它用来反映某个指标在评价过程中的分散程度,进而确定该指标的权重。指标的分散程度越高,信息熵越小,该指标的权重越大;反之,信息熵越大,权重越小。

建模思路

  1. 数据准备

    • 收集各个评价对象在不同指标下的原始数据。
  2. 数据标准化正向化

    • 由于不同指标的量纲和数量级可能不同,需要对数据进行标准化处理,使其可比性增强。
      #数据矩阵正向化
      #将极小型数据转化为极大型数据
      def minToMax(maxx,x):x=list(x)ans=[]for i in range(len(x)):ans.append(maxx-x[i])return ans#将中间型数据转化为极大型数据
      def midToMax(bestx,x):x=list(x)ans=[]h=[]#计算列表中每个元素与最优值的差的绝对值for i in range (len(x)):h.append(abs(bestx-x[i]))M=max(h)#计算最大值,用来归一化if M==0:M=1#防止除0错误#计算每个元素的极大型值for i in range(len(x)):ans.append(1-h[i]/M)return np.array(ans)#将区间型数据转化为极大型数据
      def intervalToMax(x,lowx,highx):x=list(x)ans=[]for i in range(len(x)):if x[i]>=lowx and x[i]<=highx:ans.append(1)elif x[i]<lowx:ans.append(1-(lowx-x[i])/(lowx-min(x)))elif x[i]>highx:ans.append(1-(x[i]-highx)/max(x)-highx)return np.array(ans)#对数据矩阵进行标准化
      def normalize(data):data=np.array(data)X=data/np.sqrt(np.sum(data**2,axis=0))return X#对数据矩阵进行归一化
      def regularize(data):data=np.array(data)m,n = np.shape(data)for i in range(n):col_sum=np.sum(data[:,i])for j in range(m):data[j,i]=data[j,i]/col_sumreturn data

  3. 计算指标的比重

    • 对于每个指标,计算每个评价对象在该指标下的比重,这通常是指标值除以该指标所有值的总和,这里其实就是进行归一化处理
  4. 计算信息熵

    • 使用信息熵公式计算每个指标的信息熵。
  5. 计算权值

  6. 计算得分

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/634166.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【办公自动化】python实现图片上传到阿里云OSS

阿里云OSS简介 阿里云对象存储服务(Object Storage Service,简称OSS)是一种高可靠、高可用、安全稳定的云存储服务。它提供了海量、安全、低成本、高可靠的存储服务&#xff0c;适用于各种类型的文件存储需求。 阿里云OSS使用方法 注册阿里云账号并登录&#xff1b; 创建OSS…

【办公类-21-01】20240117育婴员操作题word合并1.0

背景需求&#xff1a; 最近学校组织老师们学习“育婴员”高级&#xff0c;每周学习2题操作&#xff0c;所以我是把每个学习内容单独做在一个word文件里 上周8套保健操作学完了&#xff0c;需要整理&#xff0c;并将8份Word文件合并 第一步&#xff1a;doc装docx 合并时程序报…

leedcode刷题day2

题目&#xff1a; 根据这道题我的思路是用python首先将第一个值赋给a&#xff0c;然后将下一个值赋值给b在这里写一个循环计算下一个值是否等于a&#xff0c;不等于就进入数组当等于a的时候输出数组长度&#xff0c;然后比较数组长度输出最长长度对应的元素不过显然这很慢。 然…

在Linux中安装和配置Node.js与Express.js创建HTTP服务器

在Linux环境中&#xff0c;安装和配置Node.js与Express.js来创建一个HTTP服务器需要一系列的步骤。下面是一个详细的指南&#xff0c;帮助你在Linux上设置这个环境。 步骤1&#xff1a;安装Node.js 首先&#xff0c;你需要确保你的Linux系统已经安装了Node.js。你可以通过以下…

探索设计模式的魅力:“感受单例模式的力量与神秘” - 掌握编程的王牌技巧

在软件开发的赛场上&#xff0c;单例模式以其独特的魅力长期占据着重要的地位。作为设计模式中的一员&#xff0c;它在整个软件工程的棋盘上扮演着关键性角色。本文将带你深入探索单例模式的神秘面纱&#xff0c;从历史渊源到现代应用&#xff0c;从基础实现到高级技巧&#xf…

怎么做好小红书投放复盘,品牌运营总结

小红书作为主流的传播平台&#xff0c;聚焦了众多品牌的关注。但是对于小红书达人投放而言&#xff0c;是否完成投放就意味着任务结束了呢?其实并非如此&#xff0c;达人投放复盘也非常重要。今天我们就带大家了解一下怎么做好小红书投放复盘&#xff0c;品牌运营总结&#xf…

element中Table表格控件单选、多选功能进一步优化

目录 一、代码实现1、 父组件2、子组件&#xff08;弹框&#xff09; 二、效果图 一、代码实现 1、 父组件 <template><div><!-- 用户选择嵌套弹框 --><el-dialog :close-on-click-modal"false" :close-on-press-escape"false" tit…

零基础学Python(1)— 一文带你了解什么是Python(包括Python解释器安装步骤等)

前言&#xff1a;Hello大家好&#xff0c;我是小哥谈。从今天开始&#xff0c;我们就一起进入Python的世界&#xff01;&#x1f389;为了让大家能够牢固地掌握Python语言&#xff0c;本系列文章就循序渐进&#xff0c;从最基础的知识开始讲起&#xff0c;教大家如何去使用Pyth…

Spring-BeanPostProcessor PostConstruct init InitializingBean 执行顺序

执行顺序探究 新建一个对象用于测试 Component public class Student implements InitializingBean {private String name;private int age;public String getName() {return name;}public void setName(String name) {this.name name;}public int getAge() {return age;}pu…

代码之外:工程师的成长进阶秘籍

程序员只懂技术能行吗&#xff1f; 为什么说技术人员“说”和“写”总得擅长一个&#xff1f; 你以为的“关注结果”是真的结果吗&#xff1f; 从一线工程师跃升团队管理者一共分几步&#xff1f; 在不断变化的职场…

Linux粘滞位的理解,什么是粘滞位?

文章目录 前言如何理解&#xff1f;粘滞位的操作最后总结一下 前言 粘滞位&#xff08;Stickybit&#xff09;&#xff0c;或粘着位&#xff0c;是Unix文件系统权限的一个旗标。最常见的用法在目录上设置粘滞位&#xff0c;如此以来&#xff0c;只有目录内文件的所有者或者root…

zabbix其他配置

自动发现 zabbix server 主动的去发现所有的客户端&#xff0c;然后将客户端的信息登记在服务端上。 缺点是如果定义的网段中的主机数量多&#xff0c;zabbix server 登记耗时较久&#xff0c;且压力会较大。 systemctl disable --now firewalld setenforce 0 hostnamectl se…

还在手动复制文章吗?教你如何一键将文章从notion同步到WordPress

本文会给大家介绍如何在WordPress上安装一个插件&#xff0c;实现将notion上写的文章自动同步到WordPress上&#xff0c;从而提高写作效率&#xff0c;接下来请跟随我的脚步一起来操作吧&#xff01; 一、插件安装 在WordPress后台添加新插件页面中搜索“notion”&#xff0c;…

ip2domain - 批量查询ip对应域名、备案信息、百度权重

免责声明 由于传播、利用本文章所提供的信息而造成的任何直接或者间接的后果及损失&#xff0c;均由使用者本人负责&#xff0c;文章及作者不为此承担任何责任&#xff0c;一旦造成后果请自行承担&#xff01;如有侵权烦请告知&#xff0c;我们会立即删除并致歉。谢谢&#xf…

应该怎样保存用户密码

应该怎样保存用户密码&#xff1f; 首先&#xff0c;MD5 其实不是真正的加密算法。所谓加密算法&#xff0c;是可以使用密钥把明文加密为密文&#xff0c;随后还可以使用密钥解密出明文&#xff0c;是双向的。 使用 MD5 运算后得到的都是固定长度的摘要信息或指纹信息&#x…

C#:接口中如何将某个值类型的字段传null?

在实际对接第三方接口时&#xff0c;偶尔会有一些字段在某些情况下是不需要传值的。那如何处理呢&#xff1f; 有两种方法&#xff1a; 1、将值类型改为可空类型&#xff1b; 2、定义基类&#xff0c;基类包含所有必须要传的字段&#xff0c;子类则加入偶尔需要传的字段。 下…

java注释

注释 1、单行注释 2、多行注释 3、文档注释&#xff08;重点&#xff09; /*** author cx* version 1.0*/ public class Comment{//编写一个main方法public static void main(String[] args){System.out.println("hello,world~");} } 1. 在D盘找到javacode文件&a…

电梯节能落座-智慧停车场️,电梯不仅可载人也可以载汽车!

电梯不仅可载人也可以载汽车哦&#xff01; 在北京市丰台区&#xff0c;有这么一个智慧停车场&#x1f17f;️ &#xff0c;共298个停车位&#xff0c;全部智能一体化&#xff0c;简直是“豪华” “智能” 的象征。 523能源&#xff1a;小伍&#xff0c;你跑题了... 小伍&am…

【unity学习笔记】语音驱动blendershape

1.导入插件 https://assetstore.unity.com/packages/tools/animation/salsa-lipsync-suite-148442 1.选择小人&#xff0c;点击添加组件 分别加入组件&#xff1a; SALSA EmoteR Eyes Queue Processor&#xff08;必须加此脚本&#xff09;&#xff1a;控制前三个组件的脚本。…

Python GUI 新手入门教程:轻松构建图形用户界面

Python 凭借其简单性和多功能性&#xff0c;已经成为最流行的编程语言之一。被广泛应用于从 web 开发到数据科学的各个领域。 在本教程中&#xff0c;我们将探索用于创建图形用户界面&#xff08;GUIs&#xff09;的 Python 内置库&#xff1a; Tkinter&#xff1a;无论你是初…