热门标签 | HotTags
当前位置:  开发笔记 > 后端 > 正文

matlabdea模型_Malmquist指数的DEAP2.1测度及DEA之Matlab求解

最近在写一篇小论文,比较忙。所以今天早点下班。首先是用DEAP2.1测度Malmquist指数。准备好数据,将其储存为txt格式,malm

      最近在写一篇小论文,比较忙。所以今天早点下班。 首先是用DEAP2.1测度Malmquist指数。准备好数据,将其储存为txt格式,malmquist所运用的是面板数据,就是说你会有很多年的截面数据。那么将这些数据以年份的顺序按列排好,格式和第一期里说的放置格式一致,只不过多了几年。如下图所示,上面的红框是第一年数据,下方的红框是第二年的数据,如有其他年份,按此顺序排列。

2a258e9c4b200ab65243aca0ae6ecc13.png

      接下来看配置文件的设置,这里给出一个例子,首先共有28个DMU,2个产出指标,3个投入指标,共五年的数据。与其他模型相比,主要是第四行要改成5,因为是时间段数,其次最后一行改成2即选择Malmquist方法。倒数第二行选择1,规模可变假设。

a63dc288a141444693a815d15f204dc5.png

      运行DEAP,输入run.txt,回车便得到结果。

e40ed81972ab86f852ce10624ac07a06.png

       这里要说明下,对于测度结果的解释很多人都会陷入误区,首先测度的结果值都是相对与上一年的变化结果。并不是一个绝对值,而是一个相对值,所以第一年没有结果。

6424512053c9936ab86ca0f48e46d8a5.png

        好了,接来将介绍DEA模型在matlab中的求解。首先模型代码来源于

“彭育威,吴守宪,徐小湛.MATLAB在数据包络分析中的应用[J].西南民族学院学报(自然科学版)”论文中的代码,我对代码进行了修改,只输出效率结果。

9d4eb8a907301f99f00f20fb56a6a4c7.png

        先来看代码,注释是我以前学习时加上去的,这是传统的CCR模型。linprog函数是专门用来计算线性规划的函数,不熟悉的同学在matlab中help一下或者在mathwork中找一下linprog的介绍就懂了。

clearX= [];%投入指标数据,每一列代表每个决策单元的投入数据Y= [];%产出指标数据,每一列代表每个决策单元的产出数据n=size(X', 1); %决策单元数m=size(X,1); %投入指标数s=size(Y,1); %产出指标数epsilon=10^-10;%一个非常小的正数,在目标函数中用以识别松弛变量,并判断有效和弱有效f=[zeros(1,n) -epsilon*ones(1,m+s) 1];%目标函数前n个决策变量的价值系数为0,第n+1到第n+m+s个决策变量的价值系数都为那个充分小的正数,第n+m+s+1个决策系数的价值系数为1A=zeros(1,n+m+s+1);%不等式约束的系数矩阵,仅有1行,n+m+s+1列,元素全为0b=0;%不等式约束左端的值,全部为0LB=zeros(n+m+s+1,1);%决策变量的下限,共n+m+s+1行,1列。每个元素都为0,UB=[];%决策变量的上限,无要求。LB(n+m+s+1)=-inf;for i=1:n;%i从1循环到n,即从第一个决策单元的效率开始算到最后一个,循环结束 Aeq=[X eye(m) zeros(m,s) -X(:,i) Y zeros(s,m) -eye(s) zeros(s,1) ]; beq=[zeros(m,1) Y(:,i) ]; w(:,i)=linprog(f,A,b,Aeq,beq,LB,UB); endtheta=w(n+m+s+1,:)';%效率按列输出

       相对于CCR模型,BCC模型只是增加了一个约束条件 ,

fda326076f85ee94591095a2537105e2.png

       论文中仅给出CCR模型的代码,没有给出BCC模型的代码,我将代码进行了修改,请看BCC模型的代码。

clearX= [];Y= [];n=size(X', 1); m=size(X,1); s=size(Y,1); epsilon=10^-10;f=[zeros(1,n) -epsilon*ones(1,m+s) 1];b=0;LB=zeros(n+m+s+1,1);UB=[];LB(n+m+s+1)=-inf;for i=1:n;%i从1循环到n,即从第一个决策单元的效率开始算到最后一个,循环结束 Aeq=[X eye(m) zeros(m,s) -X(:,i) Y zeros(s,m) -eye(s) zeros(s,1)        ones(1,n) zeros(1,m+s+1)];%新添约束等式的左边 beq=[zeros(m,1) Y(:,i)             1];%新添约束等式的右边 w(:,i)=linprog(f,A,b,Aeq,beq,LB,UB); endtheta=w(n+m+s+1,:)';

       有了这两个模型的代码,便可计算被评价单元的技术效率和纯技术效率。然后通过二者相除便可得到规模效率。注意数据的摆放,投入数据和产出数据是分开的。同时按列存放,要注意每个DUM的数据要对应。如下图所示,上面红色框中的投入数据放到X矩阵中去,下方红色框中的产出数据放到Y矩阵中去。我一般都是先在Excel中放好然后复制进matlab中。

84ac64380a8e96c40de09d0478745377.png

       好了,今天的分享就到这里,有时候留言没有及时看到,超过48小时便不能回复。可以把问题发到我的邮箱813104701@qq.com。

       封面图片来自matlab百度百科中的图片。




推荐阅读
  • Python自动化处理:从Word文档提取内容并生成带水印的PDF
    本文介绍如何利用Python实现从特定网站下载Word文档,去除水印并添加自定义水印,最终将文档转换为PDF格式。该方法适用于批量处理和自动化需求。 ... [详细]
  • 本文探讨了如何在 PHP 的 Eloquent ORM 中实现数据表之间的关联查询,并通过具体示例详细解释了如何将关联数据嵌入到查询结果中。这不仅提高了数据查询的效率,还简化了代码逻辑。 ... [详细]
  • 本文介绍如何使用 Python 获取文件和图片的创建、修改及拍摄日期。通过多种方法,如 PIL 库的 _getexif() 函数和 os 模块的 getmtime() 和 stat() 方法,详细讲解了这些技术的应用场景和注意事项。 ... [详细]
  • 本文介绍了MindManager在项目管理中的强大功能,特别是其内置的甘特图工具。通过该工具,用户可以轻松创建和管理项目计划,优化任务分配,并与其他软件无缝集成。 ... [详细]
  • 优化ListView性能
    本文深入探讨了如何通过多种技术手段优化ListView的性能,包括视图复用、ViewHolder模式、分批加载数据、图片优化及内存管理等。这些方法能够显著提升应用的响应速度和用户体验。 ... [详细]
  • 本文将介绍如何编写一些有趣的VBScript脚本,这些脚本可以在朋友之间进行无害的恶作剧。通过简单的代码示例,帮助您了解VBScript的基本语法和功能。 ... [详细]
  • 三星W799在2011年的表现堪称经典,以其独特的双屏设计和强大的功能引领了双模手机的潮流。本文详细介绍其配置、功能及锁屏设置。 ... [详细]
  • 深入理解Tornado模板系统
    本文详细介绍了Tornado框架中模板系统的使用方法。Tornado自带的轻量级、高效且灵活的模板语言位于tornado.template模块,支持嵌入Python代码片段,帮助开发者快速构建动态网页。 ... [详细]
  • PHP 5.2.5 安装与配置指南
    本文详细介绍了 PHP 5.2.5 的安装和配置步骤,帮助开发者解决常见的环境配置问题,特别是上传图片时遇到的错误。通过本教程,您可以顺利搭建并优化 PHP 运行环境。 ... [详细]
  • 本文介绍了在使用Visual Studio 2015进行项目开发时,遇到类向导弹出“异常来自 HRESULT:0x8CE0000B”错误的解决方案。通过具体步骤和实践经验,帮助开发者快速排查并解决问题。 ... [详细]
  • 1.如何在运行状态查看源代码?查看函数的源代码,我们通常会使用IDE来完成。比如在PyCharm中,你可以Ctrl+鼠标点击进入函数的源代码。那如果没有IDE呢?当我们想使用一个函 ... [详细]
  • 数据管理权威指南:《DAMA-DMBOK2 数据管理知识体系》
    本书提供了全面的数据管理职能、术语和最佳实践方法的标准行业解释,构建了数据管理的总体框架,为数据管理的发展奠定了坚实的理论基础。适合各类数据管理专业人士和相关领域的从业人员。 ... [详细]
  • 本文详细介绍了如何使用 Yii2 的 GridView 组件在列表页面实现数据的直接编辑功能。通过具体的代码示例和步骤,帮助开发者快速掌握这一实用技巧。 ... [详细]
  • 如何高效创建和使用字体图标
    在Web和移动开发中,为什么选择字体图标?主要原因是其卓越的性能,可以显著减少HTTP请求并优化页面加载速度。本文详细介绍了从设计到应用的字体图标制作流程,并提供了专业建议。 ... [详细]
  • 本文详细介绍如何在Linux系统中配置SSH密钥对,以实现从一台主机到另一台主机的无密码登录。内容涵盖密钥对生成、公钥分发及权限设置等关键步骤。 ... [详细]
author-avatar
wujianhong61391
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有