R基于ARIMA模型的方法怎么用
发表于:2025-01-27 作者:千家信息网编辑
千家信息网最后更新 2025年01月27日,这篇文章主要介绍"R基于ARIMA模型的方法怎么用"的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇"R基于ARIMA模型的方法怎么用"文章能帮助大家解决问题。1、
千家信息网最后更新 2025年01月27日R基于ARIMA模型的方法怎么用绘制河南省社会消费品零售总额与年度关系的时序图。从图中可以看出,社会消费品零售总额随时间的变化逐年增加。 图1 原始序列的时序图 图2 原始序列的自相关图 做出了原始序列的自相关图,并作出两条辅助的虚线,由图像可以明显看出,系数长期大于零,序列间的相关性很强。 接下来做单位根检验,我们得到的p值大于0.05,这我们可以说序列是不显著的,由此判断该序列为非平稳的。
第一步要对最初的序列进行一阶差分后,可得到所要研究的最初序列是不平稳。 图3 原始序列一阶差分图 对最初序列进行一阶差分后,发现最初序列表现为不平稳的,接下来,接着对于最初的序列做二阶差分。 图4 原始序列二阶差分图
二阶差分之后序列的时序图在均值附近比较平稳的波动我们可以判断为其序列为平稳序列,那么我们可以接着作平稳性检验。 图5 二阶差分之后序列的自相关图
做出直观的图像如上所示,我们另外做两条虚线的辅助线,通过对比,我们看到,二阶差分之后序列的自相关图有短期相关性。 二阶差分后,我们再次做单位根检验以验证模型是否平稳,二阶差分后序列的单位根检验的结果如上所示,我们看到,此时p值是小于0.05的,我们得出该模型显著,二阶差分后的序列是平稳序列。
我们得出,此时的p值为0.004043,显然,该结果小于显著性水平,因此由上面的数据结果,我们可以得出一阶差分之后的序列是平稳非白噪声序列,所以,我们可以作接下来的检验。
那么接下来开始对于ARMA模型进行拟合,那么拟合的方式是通过构造平稳白噪声序列进行趋势拟合,这样我们可以得到p和q的数值,确定了模型的拟合数值,最后的话进行模型定阶。
第一步开始做出模型的偏自相关图。 图6 二阶差分后序列的偏自相关图
做出二阶差分后序列的偏自相关图如上所示,首先,做出一条虚的辅助线,可以明显的看出,该序列具有一阶截尾和偏自相关图拖尾性,构建ARIMA(0,1,1)模型进行模型分析以及研究。 并计算BIC信息量的值,用BIC值最小的数,进行模型定阶。BIC图如下。 图7 BIC图
通过BIC最小原则,对原始序列建立ARIMA(1,1,0)模型。
应用ARIMA(1,1,0)的时间序列模型预测河南省社会消费品未来5年的零售总额,得出2019~2023年河南省社会消费品的零售总额分别为21166.3、21517.8、21734.4、21867.7、21949.8亿元,并且,从预测图像上可以看出,河南省社会消费品的零售总额的数值随时间的增加逐年增加。 图8 社会消费品零售总额预测图
这篇文章主要介绍"R基于ARIMA模型的方法怎么用"的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇"R基于ARIMA模型的方法怎么用"文章能帮助大家解决问题。
1、平稳性检验
2、差分运算
二阶差分后继续做白噪声的检验,检验的数据结果如下。
3、模型定阶
4、ARIMA模型预测
#ARIMA模型R程序library(forecast)library(fUnitRoots)Data <- read.csv("C:\\Users\\27342\\Desktop\\河南省社会消费品零售总额数据.csv", header = TRUE)[, 2]sales <- ts(Data)plot.ts(sales, xlab = "年份", ylab = "社会消费品零售总额/亿元")# 单位根检验unitrootTest(sales)# 自相关图acf(sales)# 一阶差分difsales <- diff(sales)plot.ts(difsales, xlab = "年份", ylab = "社会消费品零售总额/亿元")# 二阶差分difsales <- diff(difsales)plot.ts(difsales, xlab = "年份", ylab = "社会消费品零售总额/亿元")# 自相关图acf(difsales)# 单位根检验unitrootTest(difsales) # 白噪声检验Box.test(difsales,type="Ljung-Box")# 偏自相关图pacf(difsales)# ARIMA(1,1,0)模型arima <- arima(sales, order = c(1, 1,0))arima #河南省社会消费品零售总额预测forecast <- forecast(arima, h = 5, level= c(99.5))forecast library(TSA)Data <-read.csv("C:\\Users\\27342\\Desktop\\河南省社会消费品零售总额数据.csv", header = TRUE)[, 2]sales <- ts(Data)plot.ts(sales, xlab = "年份", ylab = "社会消费品零售总额/亿元")# 一阶差分difsales <- diff(sales) # 二阶差分difsales <- diff(difsales) # BIC图res <- armasubsets(y = difsales, nar =5, nma = 5, y.name = 'test',ar.method = 'ols')plot(res)
关于"R基于ARIMA模型的方法怎么用"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注行业资讯频道,小编每天都会为大家更新不同的知识点。
序列
模型
总额
消费品
社会
二阶
消费
零售
平稳
检验
河南
河南省
原始
单位
方法
接下来
噪声
年份
数据
结果
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
应该怎么注意网络安全
软件开发 待遇
大专网络技术专本贯通班
房地产成本数据库如何建立
余干租房网络安全
赣州兆鑫软件开发
服务器上的三角函数
关于网络安全ppt
星际战甲怎么进北美服务器
服务器性能监控的行业前景
网络技术具体是干什么的
数据库活动监视器
视频聊天软件开发好吗
服务器安装项目管理
vue项目如何发布到服务器
扬州工程软件开发咨询报价
软件开发需要看哪些资料
南京投资分布式存储服务器
上海毅真网络技术有限公司
网络安全管理员证书成都能落户吗
数据库表的大小跟宽度
计算机网络技术推广服务
遥感应用软件开发是干啥的
广州紫鲸互联网科技评价
vba 范围最大的数据库
dell服务器自动
链潮智能服务器为什么机子停工了
服务器可以放几个硬盘
轻量级数据库管理器oracle
无尽挑战高级服务器