声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 1299|回复: 13

[编程技巧] 求助:关于多数组相加的问题

[复制链接]
发表于 2008-10-29 21:40 | 显示全部楼层 |阅读模式

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

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

x
大家好,我刚学习的MATLAB,现在遇到这样一个问题:
我有一个很大的浮点数数组,为了处理数据,我把它分成了几十个小数组(每个数组也很大),然后做了一个M函数,使这些数组可以用f(n)的形式表示,因为我闲把这几十个数组用"+"加起来比较麻烦.然后我要把这些数组按相相加或取均值,得到一个新的数组(比如新数组的第一个元素就是各小数组第一个元素的和或均值).我用sum(f(n))它把所有的元素都加起来了,最后反给我一个值,用mean(f(n))它返回我第一个小数组,资料上也查不到有关f(n)相加的例子,不知道用什么函数才好了.请老师帮忙指点,多谢!

[ 本帖最后由 im_tommy 于 2008-10-29 21:56 编辑 ]
回复
分享到:

使用道具 举报

发表于 2008-10-29 22:12 | 显示全部楼层
不懂什么意思?
是要求这个数组的和?sum(X(:))
 楼主| 发表于 2008-10-29 22:32 | 显示全部楼层
比如f(1)=[1,2,3],f(2)=[4,5,6],f(3)=[7,8,9],......
我想得到c=[12,15,18.....]这样的和或者平均值 
发表于 2008-10-29 22:43 | 显示全部楼层
f=[ 1 2 3;4 5 6;7 8 9]
sum(f,1)

评分

1

查看全部评分

 楼主| 发表于 2008-10-29 23:03 | 显示全部楼层
我的数组都是用f(n)表示的,f(n)我定义了一个M函数,可以读取数组,因为我的这个
n=1:50,每个数组有2048个数,不太好这么表示,有什么好方法没,sum(f(n),1)好象不行吧

[ 本帖最后由 im_tommy 于 2008-10-29 23:11 编辑 ]
发表于 2008-10-30 09:00 | 显示全部楼层

回复 5楼 im_tommy 的帖子

用循环呢

评分

1

查看全部评分

 楼主| 发表于 2008-10-30 12:31 | 显示全部楼层
For循环我不太会用,大概是这个样子吧
i=1;
for i<50
f(i)=f(i)+f(i+1);
end
<<f(49);
我这台电脑上没有环境,不知道对不,我想要是有什么函数可以解决不是会简单一些,因为这样的操作我也要进行多次
发表于 2008-10-30 12:56 | 显示全部楼层
2048*50,不算太大,可以用类似4楼的方式解决。
既然已经用f(n)表示2048个数,那么f应该就是50*2048的矩阵吧。
那就可以直接sum(f,1)。
如果你还没有50*2048的这个矩阵就先由向量生成这个矩阵。

评分

1

查看全部评分

 楼主| 发表于 2008-10-30 13:14 | 显示全部楼层
哦,这个方法可以,我的f其实是一个50*2048个元素的大数组,f(n)是在f上截取的n个小数组,
我先把f(n)组合成一个n维矩阵f,然后就可以用sum(f,1)了,但是这样的n维数组怎么用f(n)实现方便一点呢?
工作量应该会比m=f(1)+f(2)+...+f(50)少很多吧?
发表于 2008-10-30 13:34 | 显示全部楼层

回复 9楼 im_tommy 的帖子

怎么截的?
 楼主| 发表于 2008-10-30 13:55 | 显示全部楼层
f是一个102400个元素的数组,我把它从第一个元素开始每2048个元素变成一个小数组,即f(n),
我定义的M函数是
a=f(n)
f(n)=file(1+2048*(n-1):1:2048*n)
这样的
发表于 2008-10-30 14:21 | 显示全部楼层

回复 11楼 im_tommy 的帖子

reshape(f,50,2048)
试试这个

评分

1

查看全部评分

 楼主| 发表于 2008-10-30 14:30 | 显示全部楼层
好的我试试 
 楼主| 发表于 2008-10-31 12:56 | 显示全部楼层
对不起啊,是我搞错了,我的50个小数组是从大数组截下来后分别做了FFT处理再相加,
所以用reshape(f,50,2048)变成多维数组还不行,现在问题是怎么把我做过FFT的这50个
数组变成类似f的一维数组或者用什么办法把他们相加会比我把50个数组都列出来相加
方便一点,因为我以后可能遇到把数组分成更多小数组的情况,谢谢老师再次指点~~

[ 本帖最后由 im_tommy 于 2008-10-31 13:04 编辑 ]
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

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

GMT+8, 2024-10-1 23:35 , Processed in 0.057182 second(s), 19 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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