ARIMA时序分析模型
2021/5/3 10:27:57
本文主要是介绍ARIMA时序分析模型,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
%AMRIMA模型:根据图书去年各月销量,预测图书未来销量情况 clc; clear; close all; %导入原始数据,获得时间序列数据矩阵 t = 1:28; t = t'; y = [1019,1502,-24,61,30,1584,173,901,-3,-67,240,5365,-8,0,124,156,2,7,-112,-86,-134,21,112,-506,-63,40,-3,-546]; y = y'; figure plot(t, y) grid on %使用差分运算处理,确定ARIMA模型中的自相关系数ACF和偏相关系数PACF figure subplot(2,1,1),autocorr( y ); subplot(2,1,2),parcorr( y ); figure dy = diff( y ); subplot(2,1,1),autocorr( dy ); subplot(2,1,2),parcorr( dy ); %拟合获得ARIMA模型 Mdl = arima(4,2,1); EstMdl = estimate(Mdl,y); res = infer(EstMdl,y); %检验获得的ARIMA模型 figure subplot(2,2,1) plot(res./sqrt(EstMdl.Variance)) title('Standardized Residuals') subplot(2,2,2),qqplot(res) subplot(2,2,3),autocorr(res) subplot(2,2,4),parcorr(res) %通过ARIMA模型预测未来结果,给出误差上下限 [yF,yMSE] = forecast(EstMdl,20,'Y0',y); UB = yF + 1.96*sqrt(yMSE); LB = yF - 1.96*sqrt(yMSE); figure line_old = plot(y,'b','LineWidth',1); grid on hold on line_predt = plot(29:48,yF,'g','LineWidth',1); line_upLimit = plot(29:48,UB,'r--','LineWidth',1.2); line_lowLimit = plot(29:48,LB,'r--','LineWidth',1.2); hold off
这篇关于ARIMA时序分析模型的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-23Springboot应用的多环境打包入门
- 2024-11-23Springboot应用的生产发布入门教程
- 2024-11-23Python编程入门指南
- 2024-11-23Java创业入门:从零开始的编程之旅
- 2024-11-23Java创业入门:新手必读的Java编程与创业指南
- 2024-11-23Java对接阿里云智能语音服务入门详解
- 2024-11-23Java对接阿里云智能语音服务入门教程
- 2024-11-23JAVA对接阿里云智能语音服务入门教程
- 2024-11-23Java副业入门:初学者的简单教程
- 2024-11-23JAVA副业入门:初学者的实战指南