非期望产出超效率SBM模型matlab脚本

本人在网上找了许久终于找到了一份免费分享的非期望产出超效率super-sbm模型。本着共享的原则将其分享出来,并在原版基础上加了一些注释修改,希望能帮助到有需要的人。

%非期望产出超效率SBM模型matlab脚本代码
%原始出处:微信公众号:DEA小白入门

%操作过程:
%1.运行前在工作区里建立投入指标数据矩阵X,期望产出指标数据矩阵Y,非期望产出指标数据矩阵Z.
%注意数据矩阵格式为:指标数行x样本数列。
%2.点击工具栏“运行”,运行结束后工作区生成的theta变量,即为所求的效率;
%3.再次运行前,依次执行clc,clear清空命令行和工作区,再进行第一步操作。

[m,n]=size(X);  %m为投入指标数,n是样本数
s=size(Y,1);      %s为期望产出数
q=size(Z,1);     %q为非期望产出数
D=1./(m*X');    %目标函数的分母
E=1./((s+q)*Y');%等式约束期望产出的分母
F=1./((s+q)*Z');%等式约束非期望产出的分母
LB=zeros(n+m+s+q+1,1);UB=[];
theta=zeros(n,1);
for i=1:n
f1=[zeros(1,n) -D(i,:) zeros(1,s+q) 1];
A1=[];b1=[];
Aeq1=[X eye(m) zeros(m,s+q) -X(:,i)
     Y zeros(s,m) -eye(s) zeros(s,q) -Y(:,i)
     Z zeros(q,m) zeros(q,s) eye(q) -Z(:,i)
     zeros(1,n+m) E(i,:) F(i,:) 1];
beq1=[zeros(m,1)
     zeros(s,1)
     zeros(q,1)
      1];
[w1(:,i) theta(i)]=linprog(f1,A1,b1,Aeq1,beq1,LB,UB);

if abs(theta(i)-1)<0.00001    
f=[zeros(1,n) D(i,:) zeros(1,s+q) 1];
A=[[X(:,1:i-1),zeros(m,1),X(:,i+1:n)] -eye(m) zeros(m,s+q) -X(:,i)
   - [Y(:,1:i-1),zeros(s,1),Y(:,i+1:n)] zeros(s,m) -eye(s) zeros(s,q) Y(:,i)
   [Z(:,1:i-1),zeros(q,1),Z(:,i+1:n)] zeros(q,m+s)  -eye(q) -Z(:,i)];
b=zeros(m+s+q,1);
Aeq=[zeros(1,n+m) -E(i,:) -F(i,:) 1];
beq=1;
[w(:,i) theta(i)]=linprog(f,A,b,Aeq,beq,LB,UB);
end
end
theta;%效率值

  • 13
    点赞
  • 51
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
面板数据期望产出效率(Semi-Balanced Efficiency Measure, SBM模型是一种用于评估面板数据中企业或组织的效率的方法。该模型基于数据包络分析(Data Envelopment Analysis, DEA)方法,在传统的DEA方法的基础上进行改进。 MATLAB代码实现SBM模型可以分为以下几个步骤: 1. 准备数据:收集所需数据,包括各个企业或组织的输入和产出指标数据。将数据以矩阵的形式导入MATLAB。 2. 构建SBM模型:使用MATLAB中的线性规划函数(如linprog)构建SBM模型。根据实际情况,设定各个企业或组织的输入产出权重范围等约束条件。通过目标函数最大化或最小化来确定各个企业或组织的效率。 3. 运行模型:通过调用MATLAB中的线性规划函数来运行SBM模型模型将根据设定的约束条件和目标函数进行计算,得到每个企业或组织的效率评估结果。 4. 分析结果:对模型输出的结果进行进一步分析和解读,评估各个企业或组织的效率水平。根据结果,可以进行效率改进或调整策略,提高整体效率。 需要注意的是,SBM模型的准确性和有效性取决于数据的质量和模型的构建参数。在进行模型实施前,务必对数据进行清洗和验证,并进行合理的模型参数设定。 以上是关于面板数据期望产出效率SBM模型MATLAB代码的简要介绍,实际的代码实现可能还涉及一些细节和特定的实际问题。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值