作业帮 > 综合 > 作业

请问怎么用matlab确定ARMA模型的阶数,

来源:学生作业帮 编辑:搜搜做题作业网作业帮 分类:综合作业 时间:2024/05/02 20:12:49
请问怎么用matlab确定ARMA模型的阶数,
时间序列应经给定,如何用matlab来确定该序列的ARMA模型的阶数p,q呢,还有它的系数,
请问怎么用matlab确定ARMA模型的阶数,
描述问题呢,就要准确,不然会让回答的人无所是从,很多时候心情不好就不会看了,比如,你是用SPSS还是matlab或是SAS或是minitab或是R,时间序列是有季节性?趋势性?等等,你不说清这些,人家也很郁闷啊,如果是matlab,我给你下面的ARMA程序参考,你把那个随机数换成你的,相应的地方改一下,就可以了,SAS也有,没贴了,matlab 10版以上是有时间序列工具箱的,其它的界面操作,自己去学吧.
clc,clear
randn('state',sum(clock)); %初始化随机数发生器
elps=randn(1,10000); %产生 10000个服从标准正态分布的随机数
x(1)=0; %赋初始值
for j=2:10000
x(j)=0.8*x(j-1)+elps(j)-0.4*elps(j-1); %产生样本点
end
for i=0:3
for j=0:3
spec= garchset('R',i,'M',j,'Display','off'); %指定模型的结构
[coeffX,errorsX,LLFX] = garchfit(spec,x); %拟合参数
num=garchcount(coeffX); %计算拟合参数的个数
%compute Akaike and Bayesian Information Criteria
[aic,bic]=aicbic(LLFX,num,10000);
fprintf('R=%d,M=%d,AIC=%f,BIC=%f\n',i,j,aic,bic); %显示计算结果
end
end