声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 1060|回复: 3

[综合讨论] 如何存储这个序列?

[复制链接]
发表于 2009-8-24 17:06 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?我要加入

x
有一个序列: f:m*n矩阵,m,n是自己输入,变化的
现在计算每列中-1出现的次数。

for i=1:n
     x(?,i)=find(fi(:,i)==-1);
     y=length(x(?,i));
end;
不知道这样计算对不对,x(?,i),因为不知道x每列的长度,所以x()不知道怎么写?大家帮忙请教,谢谢了!
回复
分享到:

使用道具 举报

发表于 2009-8-24 17:24 | 显示全部楼层
不需要用循环,f初始化完毕后只需length(find(f==-1))语句,就可以求出-1出现的次数了,比如:
>> f=-1*ones(5)

f =

    -1    -1    -1    -1    -1
    -1    -1    -1    -1    -1
    -1    -1    -1    -1    -1
    -1    -1    -1    -1    -1
    -1    -1    -1    -1    -1

>> length(find(f==-1))

ans =

    25

评分

1

查看全部评分

 楼主| 发表于 2009-8-24 19:27 | 显示全部楼层

回复 沙发 花如月 的帖子

谢谢你,你这样比较简洁~~

[ 本帖最后由 furoo 于 2009-8-24 20:55 编辑 ]
发表于 2009-8-24 21:45 | 显示全部楼层


针对每列计算, 参考下
f=-1*ones(5); f([2,3],[1,5])=2; f(4,3)=3
aa=zeros(5); aa(find(f==-1))=1; sum(aa)

还有LZ原来的思维也可, 试试参考下
y=[];
for i=1:5
    x(i)={find(f(:,i)==-1)}; y=[y, length(x{i})];
end; y
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

QQ|小黑屋|Archiver|手机版|联系我们|声振论坛

GMT+8, 2024-5-20 02:15 , Processed in 0.056068 second(s), 18 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表