数据包络分析(超效率-SBM模型)附python代码
超效率-SBM模型
- 超效率SBM
- python代码(部分)
这段时间差不多忙完了,终于有时间可以来经营我的博客了。
上阵子挺多人私信我,原谅我记性不好,可能没有回复全。
这篇文章是超效率的扩展。
超效率SBM
SBM本身就是非径向模型(non-radial model),想要了解径向超效率的请自行去前面翻阅。
上篇文章说到super-SBM的一个模型,公式为:
这个模型是分式模型,我们可以通过charnes cooper变换,将其转变成为:
python代码(部分)
在编程过程中,本来我以为第一个模型是无法出结果的,但是很无语的是,是我有bug了。这里就附上第一个模型的超效率核心部分代码(第二个也是差不多,万变不离其宗)。
首先,数据为:
def __SBM_super_C(self):for k in self.DMUs:MODEL = gurobipy.Model()fi = MODEL.addVars(self.m1)lambdas = MODEL.addVars(self.DMUs)fo = MODEL.addVars(self.m2)t = MODEL.addVar()MODEL.update()MODEL.setObjective(t + t/self.m1 * quicksum(fi[j] for j in range(self.m1)), sense=gurobipy.GRB.MINIMIZE)MODEL.addConstrs(quicksum(lambdas[i] * self.X[i][j] for i in self.DMUs if i != k)<= (1+fi[j]) * self.X[k][j] for j in range(self.m1))MODEL.addConstrs(quicksum(lambdas[i] * self.Y[i][j] for i in self.DMUs if i != k)>= (1-fo[j]) * self.Y[k][j] for j in range(self.m2))MODEL.addConstr(t-t/self.m2 * quicksum(fo[j] for j in range(self.m2)) == 1)MODEL.setParam('OutputFlag', 0)MODEL.setParam("NonConvex", 2)MODEL.optimize()self.Result.at[k, ('效益分析', '效率')] = MODEL.objValreturn self.Result
首先是用最基本的SBM模型对所有DMUs进行分析,结果如下,前四个DMUs是SBM有效的:
效率(SBM) 有效性 类型
A 1 SBM 有效 规模报酬固定
B 1 SBM 有效 规模报酬固定
C 1 SBM 有效 规模报酬固定
D 1 SBM 有效 规模报酬固定
E 0.42 非 SBM 有效 规模报酬固定
F 0.571429 非 SBM 有效 规模报酬固定
然后为深入了解前四个DMUs中哪个更好,针对这四个,做超效率-SBM模型分析。(注意此时得到的E、F值不用,用基础SBM中得到的效率值。)
效益分析效率
A 1.14286
B 1.16383
C 1.08824
D 1.125
E 1
F 1
最终,整合后得到的效率值应该是:
效益分析效率
A 1.14286
B 1.16383
C 1.08824
D 1.125
E 0.42
F 0.571429
这个例子是来自于书本的(Data Envelopment Analysis 2th Edition),书中给出了结果,与复现结果是一致的。
数据包络分析(超效率-SBM模型)附python代码相关推荐
- sbm matlab,超效率sbm模型matlab-如何用matlab估计空间杜宾模型
超效率sbm模型matlab-如何用matlab估计空间杜宾模型 所属分类:宝牧问答 发布时间:2020-10-12 09:54:58 如何用matlab估计空间杜宾模型 你怎么还没解决?实在看去了. ...
- 数据分析系列:归因分析原理、案例(附python代码)
本文主要对以下指标的计算和解释进行阐述,并使用案例说明,最后利用python编写代码进行计算: risk ratios and rate ratios(风险比率和比率比率,RR) risk diffe ...
- 【数据可视化应用】绘制极坐标(附Python代码)
折扇图 先从简单的折扇图开始, 此图在新冠疫情期间很火, 其实就是极坐标系下的柱状图,我这里随便编了几个数据.自动计算坐标,无论长度如何. 文字标签坐标是柱子中线顶点向外偏移200个单位. # 编造数 ...
- python样本不均衡_三招提拔数据不均衡模子的机能(附python代码)
对付深度进修而言,数据集异常主要,但在实践名目中,或多或少会遇见数据不均衡题目.甚么是数据不均衡呢?举例来说,目前有一个义务是判定西瓜是不是成熟,这是一个二分类题目--西瓜是生的照旧熟的,该义务的数据 ...
- 【数据可视化应用】气象绘图(附Python代码)
数据 本文使用数据来自:https://psl.noaa.gov/data/gridded/data.ncep.reanalysis.derived.surface.html 北半球冬季平均经向风 难 ...
- VRS、CRS条件下非期望产出超效率SBM模型,以及普通SBM模型(可计算冗余度)
之前更新了一个帖子是VRS条件下非径向非导向条件下超效率SBM模型,现如今更新出CRS条件下(两者可配合使用),一般CRS条件下测出来的结果更好分析(没有效率值忽高忽低现象):此外尽管现在众多期刊上的 ...
- 非期望产出超效率SBM模型matlab脚本
本人在网上找了许久终于找到了一份免费分享的非期望产出超效率super-sbm模型.本着共享的原则将其分享出来,并在原版基础上加了一些注释修改,希望能帮助到有需要的人. %非期望产出超效率SBM模型ma ...
- 效率评价方法--数据包络分析
一. 数据包络分析方法概念 1.1 理论背景 我们常常需要对具有相同类型的部门或单位(称为决策单元)进行评价,其评价的依据是决策单元的"输入"数据和"输出"数据 ...
- MATLAB的超效率SBM-DEA模型代码 可以做期望产出和非期望产出的超效率和非超效率sbm模型和Malmquist指数和分解
MATLAB的超效率SBM-DEA模型代码(有安装教程和内容讲解之类的东西),操作很简单 可以做期望产出和非期望产出的超效率和非超效率sbm模型和Malmquist指数和分解 ID:669695527 ...
最新文章
- CodeForces - 1484F Useful Edges(最短路)
- 分布式系统的开发经验与心得
- 天池 在线编程 到达终点
- 数据挖掘之数理统计与描述性统计
- 等式约束的序列二次规划(SQP)
- java实现人字拼,人字拼地板拼法大全
- 推荐一个原型设计工具Balsamiq Mockups
- 小波变换和motion信号处理(二)
- phpQuery—基于jQuery的PHP实现
- excel表格操作之数据分级统计
- Unity 组合键输入及容易忽略的问题
- PDF怎么裁剪页面,PDF裁剪页面的操作步骤
- ps4系统软件升级无法连接服务器,这才是正确的解决办法 PS4怎么通过优盘升级系统...
- 打造前端 Deepin Linux 工作环境——安装最新版本的火狐firefox浏览器
- 一亩三分地 新手上路 网站规则 - 满分5大米(适用于所有用户) 答案 新手入门
- 判断计算机硬件和网络故障,计算机硬件故障的识别与处理
- 数据不在有用时进行安全销毁
- 计算机视觉中的MAP的理解(mean average precision)
- 写作小课堂:【写好简历】强调效果胜过强调水平、保持一致性和向上的趋势、在简历中要用好主题词。通常不超过两页(A4纸正反两面)为佳
- 请问投稿中要求上传的author_SCI投稿过程中主要有哪些状态,持续时间大概多久?...