楼主: weixiaozyy
16207 2

请教:Index exceeds matrix dimensions如何解决?程序和数据在下面 [推广有奖]

  • 0关注
  • 0粉丝

小学生

64%

还不是VIP/贵宾

-

威望
0
论坛币
409 个
通用积分
0
学术水平
0 点
热心指数
0 点
信用等级
0 点
经验
75 点
帖子
13
精华
0
在线时间
0 小时
注册时间
2005-3-8
最后登录
2011-10-4

楼主
weixiaozyy 发表于 2009-4-1 22:58:00 |AI写论文

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

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

经管之家联合CDA

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

感谢您参与论坛问题回答

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

+2 论坛币

clear

X=[69120,72451,19981,51736,3945.6,5200,3202.1,3111.5,3427.7,77767,2702.5,4418.6,2462.4;43899,42108,11430,45724,3830.1,5000,3110.2,4002.4,2403.8,55296,2090.9,3368.3,2080.4;686752.4202,312686.7847,65927.73,82981.4293,22250.3084,9418.5,2724.7158,35126.52984,6223.52933,670491.732,3844.50522,6291.65376,11231.38031;41597,35348,9727,39251,4360,3866,3624,3263,2547,64297,2569,3895,1817];

Y=[3356047,3751434,907839,3369861,381087.2,475600,351217.8,295883,238201.5,5096085,253000.2,359045.8,185413.1;2239897,1921861,516675,1943359,238226,299000,201830.8,191738.7,147827.3,2766055,156280.7,249668.8,127195.7;61758,76597,19674,90939,6800.3,10200,6148.6,4442.6,5044.6,122708,5120.3,8046.2,3449.3;4959,15511,2266,6713,411.1,700,199.9,-183.8,346.6,10076,189.7,521.1,198.7];

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)

 

 

二维码

扫码加我 拉你入群

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

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

关键词:Dimensions dimension exceeds matrix Exceed 数据 matrix Index Dimensions exceeds

沙发
weixiaozyy 发表于 2009-4-1 23:01:00

运行时出的错误如下:

Exiting: cannot converge because the primal residual, dual residual,
 or upper-bound feasibility is NaN.
??? Index exceeds matrix dimensions.

藤椅
matlab-007 发表于 2014-12-31 20:23:44
就是说,比如数组只有10个元素,而你访问它的第11个元素,就发生越权。
或者你的角标小于零,或小数之类的,都会出现这种问题。

不是说数组超出最大范围,当然MATLAB中,数组也有限制的,就是说一个数组最大只能是多少个字节。可以参看memory函数。

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

本版微信群
加好友,备注cda
拉您进交流群
GMT+8, 2025-12-28 21:24