zanjero 发表于 2006-12-26 16:39

[求助]这样冗长的代码怎么简化

=size(t2)
for j=1:n
for i=1:m
    if (t2(i,j)-y2(i,j))/t2(i,j)<0.2
      hege(j)=hege(j)+1;
    end
end
end
我想自己还没入门,论文火烧眉毛了,555

[ 本帖最后由 zanjero 于 2006-12-26 16:40 编辑 ]

LeoKing 发表于 2006-12-27 21:07

这段代码不冗长啊。

geoer 发表于 2006-12-27 21:55

兄弟不要着急,能做多少是多少,每天踏实做就是了。

eight 发表于 2006-12-27 22:27

原帖由 zanjero 于 2006-12-26 16:39 发表
=size(t2)
for j=1:n
for i=1:m
    if (t2(i,j)-y2(i,j))/t2(i,j)<0.2
      hege(j)=hege(j)+1;
    end
end
end
我想自己还没入门,论文火烧眉毛了,555



A = ((t2-y2)./t2) < 0.2;
hege = sum(A,1);

geoer 发表于 2006-12-28 09:38

应改为hege = sum(A,2);

eight 发表于 2006-12-28 10:14

原帖由 geoer 于 2006-12-28 09:38 发表
应改为hege = sum(A,2);


按照他的代码,j是原矩阵的列,也就是说,求得的hege是一个和原矩阵有相同列数的向量,所以,sum(A,1)是正确的

geoer 发表于 2006-12-28 10:42

抱歉,是我把sum(A,1)理解成按行求和了,佩服。

eight 发表于 2006-12-28 10:51

原帖由 geoer 于 2006-12-28 10:42 发表
抱歉,是我把sum(A,1)理解成按行求和了,佩服。

你的理解没错,sum(A,1)是按行求和,所以行数变成1,列数不变

geoer 发表于 2006-12-28 10:57

那我理解的按行求和是把行求和了,哭笑不得。
页: [1]
查看完整版本: [求助]这样冗长的代码怎么简化