声振论坛

 找回密码
 我要加入

QQ登录

只需一步,快速开始

查看: 1195|回复: 7

[综合讨论] 求助求平均值

[复制链接]
发表于 2010-2-3 10:16 | 显示全部楼层 |阅读模式

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

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

x
各位兄弟姐妹

我有一组数据 比如说(x1,x2,x3,x4,x5,x6...xi,xi+1,...)

我希望可以每两个数据求一次平均值
变成(average(x1:x2),average(x3:x4),average(x5:x6),...average(xi:xi+1),...)

可惜这组数据非常多 一个个输入 实在有够麻烦

不知道有没有什么简单的方法 谢谢了
回复
分享到:

使用道具 举报

发表于 2010-2-3 11:50 | 显示全部楼层
aa=rand(100,1); aa=reshape(aa,2,50); bb=mean(aa);

评分

1

查看全部评分

 楼主| 发表于 2010-2-3 17:04 | 显示全部楼层

回复 沙发 ChaChing 的帖子

我的大神啊 太感谢你了
发表于 2010-2-3 18:20 | 显示全部楼层
reshape 太复杂了,用这个
aa=rand(100,1);
mean=0.5*(aa(1:end-1)+aa(2:end));
发表于 2010-2-3 18:40 | 显示全部楼层

回复 地板 VibrationMaster 的帖子

LS看快了mean=0.5*(aa(1:end-1)+aa(2:end));并非LZ要的
应该是mean=0.5*(aa(1:2:end-1)+aa(2:2:end));
 楼主| 发表于 2010-2-3 18:42 | 显示全部楼层
v兄啊 你的方法可能有点问题

我的意思是每2个数据求1次平均值 不是(x1+x2)/2,(x2+x3)/2,...

比如100个数据 算了后应该有50个数据 而不是99个

我兄的方法挺好理解的 都谢谢你们了
发表于 2010-2-4 05:11 | 显示全部楼层
呵呵,像这种情况。我比较喜欢用块处理函数blkproc。例如:
>> a=[1 2 3 4];
>> blkproc(a,[1,2],[0,0],@mean)

ans =

    1.5000    3.5000

评分

1

查看全部评分

发表于 2010-2-4 08:39 | 显示全部楼层
基本上, 不差很多的话, 个人习惯使用basic较好, 毕竟toolbox不是每个都齐!
不过楼上的blkproc函数还满好用的, 学习了!
您需要登录后才可以回帖 登录 | 我要加入

本版积分规则

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

GMT+8, 2024-11-5 17:20 , Processed in 0.073053 second(s), 22 queries , Gzip On.

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

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