谢谢你我明白了很感激 本帖最后由 Happy99 于 2010-11-13 12:21 编辑
可能个人表达能力需加强!:'(
3不是说出LZ的问题了!? ps:有复制试过了!:@) 本帖最后由 Happy99 于 2010-11-13 12:24 编辑
happy 发表于 2010-11-13 10:56 http://www.chinavib.com/static/image/common/back.gif
没猜错的话楼主这个函数是一个生物医学方面工具包里的函数
该函数autocovariance.m是一个帮助文件,实际上 ...
生物医学方面工具包里, 没搜索到有此函数!?:@) 本帖最后由 Happy99 于 2010-11-13 12:22 编辑
captain114 发表于 2010-11-13 00:54 http://www.chinavib.com/static/image/common/back.gif
调用Autocovariance函数时Autocovariance输出变量定义有问题吧
抱歉, 昨晚可能误会你的意思了!?:@L
原以为LS要说的是不可以如下使用, 输出引数与函数同名
function autocovariance=autocovariance(inp1,inp2,...)
上式是可以的! 把函数一贴出来这不问题就简单了吗?
在你的源程序结尾处,应该加一句给Autocovariance赋值的语句! 回复 15 # happy 的帖子
麻烦您帮我看看这个程序 怎么还是有那个问题啊!是不是我把文件放的不对
这是程序:
function =autocorrelation(Out_timeSeries)
%Input : Out_timeSeries is row vector
%Output :Out_Autocorrelation is a row vector
v=var(Out_timeSeries,1); % sample variance
m=mean(Out_timeSeries); % sample mean
k=size(Out_timeSeries,2); % size of sample
c=zeros(1,k-1);
Outdata=zeros(1,k-1);
for i=1:(k-1)
c(i)=((Out_timeSeries(1:(k-i))-m)*(Out_timeSeries((1+i):(k))-m)')/k;
Outdata(i)=c(i)/v;
end
end
运行出来的结果是
Error in ==> Autocorr at 5
var1=var(Out_timeSeries,1);% sample variance
??? Output argument "Out_std" (and maybe others) not assigned during
call to "d:\我的文档\MATLAB\Autocorr.m>Autocorr". 楼主指名了, 不知该不该回应:@(
LZ给的出错代码和出错提示好像不对搭
v=var(Out_timeSeries,1) <-> vs var1=var(Out_timeSeries,1); ??
Outdata <-> Out_std ??
回复 15 # happy 的帖子
赞同,返回值写的不对啊
应该是function =autocovariance(m,n,o,...)的形式 本帖最后由 Happy99 于 2010-11-15 23:41 编辑
...应该是function =autocovariance(m,n,o,...)的形式
什麽意思?
应该不是"返回值写的不对", 而是没有给autocovariance赋值, 然而又要予以返回值!
简单建个函数pp77.m如下
function pp=pp77(inp)
pp2=inp
命令窗口分别输入下列两式, 并比较其差异!
aa=pp77(2)
pp77(2)
页:
1
[2]