【发布时间】:2016-07-01 14:36:29
【问题描述】:
所以我有这个,它实际上是一种“手动”的平均方式
function DESV=cada(arch,col);
a=load(arch);
primera=a(:,col);
n=length(primera);
M=zeros(n,1);
for i=1:n-4
for r=i:i+4
M(i)=M(i)+primera(r);
end
end
M=M/5;
M
它的奇妙之处在于它每 5 步计算一次(我在循环中减去 4,因为存档的长度不完全是 5 的倍数) 现在老师告诉我我必须在里面放一个平均值,而不是把它计算为一个总和。 我不知道该怎么做,我试过了,但我得到了不同的结果,我知道如何使用平均值,但我不知道如何让它每 5 步计算一次,循环的结构是什么。 提前致谢
【问题讨论】:
-
这看起来只是一个移动平均过滤器。也许谷歌搜索可以帮助你?
-
“我在循环中减去了 4,因为存档的长度不完全是 5 的倍数”
-
是的,它只是敲响了你所做的一切。
-
另外,是的,我在谷歌上搜索过,它说我在搜索移动平均线时必须使用 tsmovavg,我认为这不是练习要我做的事情
标签: matlab for-loop octave mean