y = sin([1:300]') + 0.5*randn(300,1)
y = iddata(y)
mb = ar(y,4,'burg')
mfb = ar(y,4)
bode(mb,mfb)
例二
% AR model order
clcclear
addpath(genpath(pwd),1)
data = load('Case2Damage0_1_0.01_0.001_40_10_150_123_1.mat')
dofy = [2,4,6,8,10,12,14,16]
x = zscore(data.acc(:,dofy))
order = [10:10:130]
for i = 1:length(order)
for j =1:size(x,2)
m = ar(x(:,j),order(i),'yw'袜源)
am(i,j) = aic(m)
end
end
plot(order,am,'LineWidth',2,'Marker','*')
xlabel('AR order'),ylabel('AIC')
legend('搜好雹sensor 2','sensor 4','sensor 6','sensor 8',...
'sensor 10','sensor 12','sensor 14','sensor 16')
ar(2)模型的方差公式为:Rj=a1R(j-1)+a2R(j-2)。在用 AR 模型 对数据进行建模时AR模型的困森拍最佳预测 所谓的最佳预测,即是预测误差春困的方差汪羡为最小意义下的预测预测误差方差: 注意:因为在预测原点对时刻的序列值做出预测时,时刻的序列值并未发生,所以需要首先计算作为时刻序列值的近似替换。2. 预测误差 2步预测误差方差AR(1)过程模拟的R实现 X_n=0.5X_{n-1}+\epsilon_n, \epsilon_n\sim N(0,1) wn<-
2. X_n=1.5X_{n-1}-0.3X_{n-2}+\epsilon_n 的模拟 >y<-arima.sim(model=list(ar=c(
3. 模拟模型 X_n=0.5X_{n-1}+0.3X_{
如何用MATLAB对时间序列AR模型做预测?
第一步,使用load命令加载数据
第二步,使用ar函数陵漏雀亮,确定时间序列AR模型
第三步,确定预测时间范围指定为K个样本。K=100。
第四步,使用forecast函数,绘制给定时间范围内的预测系统响应。尺岁烂
实现代码,(供参考)
clc
%Forecast Response of Time Series Model
%时间序列模型的预测响应
load iddata9 z9
past_data = z9.OutputData(1:50)
model = ar(z9,4)
K = 100
forecast(model,'r--',past_data,K)
运行结果
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)