楼主: chenxiongmi
5586 8

[统计软件] 交叉效率DEA程序问题求教 [推广有奖]

  • 0关注
  • 1粉丝

博士生

5%

还不是VIP/贵宾

-

威望
0
论坛币
2 个
通用积分
8.4747
学术水平
6 点
热心指数
6 点
信用等级
6 点
经验
2075 点
帖子
201
精华
0
在线时间
78 小时
注册时间
2013-12-1
最后登录
2021-4-12

楼主
chenxiongmi 发表于 2015-12-13 23:13:51 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币

如下做实证遇到困难,自己把参数代了几次都错了,公式见附件。

x1x2x3y1y2
DMU1

30

25

130

35

60

DMU2

60

40

150

43

80

DMU3

55

70

120

76

53

DMU4

40

30

70

52

42

DMU5

70

90

180

63

71



求教各位大虾,这个交叉效率DEA参数怎样带进去。谢谢各位。

clear
X=[];                                
Y=[];                              
n=size(X',1);m=size(X,1);s=size(Y,1);      
A=[-X' Y'];b=zeros(n,1);
LB=zeros(m+s,1);UB=[];
for i=1:n;
    Aeq =[X(:,i)'zeros(1,s)];beq=1;
    f=[zeros(1,m) -Y(:,i)'];
    w(:,i)=LINPROG(f,A,b,Aeq,beq,LB,UB);  
    Eii=Y(:,i)'*w(m+1:m+s,i);            
     for k=1:n;                          
         f=[zeros(1,m) Y(:,k)'];
         Aeq=[X(:,k)'zeros(1,s) Eii*X(:,i)'-Y(:,i)']
         beq=[1 0];
         v=LINPROG(f,A,b,Aeq,beq,LB,UB);
         E(i,k)=(Y(:,k)'*v(m+1:m+s))/(X(:,k)'*v(1:m));
     end
    end
E                                   
Mean(E)                              
[Y I]=sort(mean(E));                    
fliplr(I)                     
利用MATLAB进行DEA交叉评价分析_彭育威.pdf (261.34 KB)             

二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:效率DEA 问题求教 DEA linprog zeros 程序

沙发
chenxiongmi 发表于 2015-12-15 09:56:25
唉,求助求助,搞到最后我自己弄出来了。
clear
X=[30 60 55 40 70;25 40 70 30 90;130 150 120 70 180];         
Y=[35 43 76 52 63;60 80 53 42 71];                                 
n=size(X',1);m=size(X,1);s=size(Y,1);      
A=[-X' Y'];b=zeros(5,1);
LB=zeros(5,1);UB=[];
for i=1:5;
    Aeq =[X(:,i)',zeros(1,2)];beq=1;
    f=[zeros(1,3),-Y(:,i)'];
    w(:,i)=linprog(f,A,b,Aeq,beq,LB,UB);  
    Eii=Y(:,i)'*w(4:5,i);              
     for k=1:5;                           
         f=[zeros(1,3),Y(:,k)'];
         Aeq=[X(:,k)',zeros(1,2);Eii*X(:,i)',-Y(:,i)'];   
         beq=[1;0];   
         v=linprog(f,A,b,Aeq,beq,LB,UB);
         E(i,k)=(Y(:,k)'*v(4:5))/(X(:,k)'*v(1:3));
     end
    end
E                                 
mean(E)                             
[Y I]=sort(mean(E));                  
fliplr(I)      
运行结果:
>> clear
X=[30 60 55 40 70;25 40 70 30 90;130 150 120 70 180];         
Y=[35 43 76 52 63;60 80 53 42 71];                                 
n=size(X',1);m=size(X,1);s=size(Y,1);      
A=[-X' Y'];b=zeros(5,1);
LB=zeros(5,1);UB=[];
for i=1:5;
    Aeq =[X(:,i)',zeros(1,2)];beq=1;
    f=[zeros(1,3),-Y(:,i)'];
    w(:,i)=linprog(f,A,b,Aeq,beq,LB,UB);  
    Eii=Y(:,i)'*w(4:5,i);              
     for k=1:5;                           
         f=[zeros(1,3),Y(:,k)'];
         Aeq=[X(:,k)',zeros(1,2);Eii*X(:,i)',-Y(:,i)'];   
         beq=[1;0];   
         v=linprog(f,A,b,Aeq,beq,LB,UB);
         E(i,k)=(Y(:,k)'*v(4:5))/(X(:,k)'*v(1:3));
     end
    end
E                                 
mean(E)                             
[Y I]=sort(mean(E));                  
fliplr(I)  
Optimization terminated.
Optimization terminated.
Exiting: Maximum number of iterations exceeded; increase options.MaxIter.
Optimization terminated.
Optimization terminated.
Optimization terminated.
Optimization terminated.
Optimization terminated.
Exiting: Maximum number of iterations exceeded; increase options.MaxIter.
Optimization terminated.
Optimization terminated.
Optimization terminated.
Optimization terminated.
Optimization terminated.
Optimization terminated.
Optimization terminated.
Optimization terminated.
Exiting: Maximum number of iterations exceeded; increase options.MaxIter.
Optimization terminated.
Optimization terminated.
Optimization terminated.
Optimization terminated.
Exiting: Maximum number of iterations exceeded; increase options.MaxIter.
Optimization terminated.
Optimization terminated.
Optimization terminated.
Optimization terminated.
Optimization terminated.
Optimization terminated.
Optimization terminated.

E =

    1.0000    0.6280    0.3155    0.5250    0.3287
    0.9181    1.0000    0.5264    0.8700    0.5199
    0.6520    0.4970    1.0000    0.9408    0.6183
    0.3624    0.3859    0.6082    1.0000    0.4038
    1.0000    1.0000    0.8013    1.0000    0.7497


ans =

    0.7865    0.7022    0.6503    0.8672    0.5241


ans =

     4     1     2     3     5

藤椅
追梦-花开无痕 发表于 2016-5-15 20:38:38
请问为什么我用这个代码写出来的程序提示串联矩阵维度不一致呢,请问这是什么问题?

板凳
chenxiongmi 发表于 2016-5-21 16:54:04
把那个教材看看,每个矩阵行列对清楚就能运行出来结果了。

报纸
百变星空1227 发表于 2016-11-30 10:21:52
chenxiongmi 发表于 2016-5-21 16:54
把那个教材看看,每个矩阵行列对清楚就能运行出来结果了。
请问,你看的是那本教材,能否说一下,谢谢,最近也在学习使用MATLAB对DEA的相关模型进行求解,感觉很困难呀,谢谢~~~~

地板
tongest 发表于 2016-12-5 09:11:13
小白一只,正好需要超详细步骤!感谢大神!!!

7
PX0706 发表于 2017-1-29 12:19:08
MATLAB没做过交叉效率,只知道MAXDEA专业版可以很快做出来

8
mango19921225 发表于 2017-9-1 12:02:49
感谢大神分享经验 完全零经验小白需要用这款软件整毕业论文

9
conniettttt 发表于 2019-4-1 17:11:20
chenxiongmi 发表于 2015-12-15 09:56
唉,求助求助,搞到最后我自己弄出来了。
clear
X=[30 60 55 40 70;25 40 70 30 90;130 150 120 70 180]; ...
你好,请问代码如何修改可以改成测算仁慈型DEA交叉效率

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
jg-xs1
拉您进交流群
GMT+8, 2025-12-20 11:12