900字范文,内容丰富有趣,生活中的好帮手!
900字范文 > R语言-向量自回归模型VAR的实现

R语言-向量自回归模型VAR的实现

时间:2020-07-19 07:27:38

相关推荐

R语言-向量自回归模型VAR的实现

向量自回归模型VAR是计量经济学中的一个概念,用于多元时间序列相关关系的分析。详细概念我就不赘述了,具体的定义和技术流程可以看计量经济学的相应书籍、人大经济论坛的视频或者是公众号“财经节析”的介绍。这个模型的建立和脉冲分析等一般都是用Eviews软件或stata软件来完成。R语言中也有相应的包,我前段时间用这个包写了一些实现代码。

在下面的VAR模型中,我只给了一个变量(aba)的示例。

install.packages("urca") #平稳性检验包install.packages("vars") #var包library(urca)library(MASS)library(sandwich)library(strucchange)library(vars)#设置工作文件夹#setwd("D:/test")#读取数据data<-read.csv("F:/.csv") #读取数据aba<-data[,2] #将data数据的第2列赋值给aba数据框...#建立时间序列的日期列,将数据转化为时间序列aba.ts<-ts(aba,start=c(,10,6),end=c(,11,4),freq=395) #日期从.10.6-.11.4,总共395天...#绘制波动图plot(aba.ts,type="l",xlab="Date", ylab="aba") ...#平稳性检验#在平稳性检验之前需要取对数,以消除时间序列的异方差的影响lnaba<-log(aba)...#判断是否平稳主要看详细拟合结果的最后两个部分urt.lnaba<-ur.df(lnaba,type='trend',selectlags='AIC')summary(urt.lnaba)...#建立VAR模型data.new<-data.frame(aba.ts,...) #合并数据VARselect(data.new,lag.max=10,type="const") #在10以内选择最优滞后阶数#根据结果不同的信息准则有不同的滞后阶数,一般来说选择在相同条件下更加简洁的模型。#在确定好最优滞后阶数以后我们就可以拟合模型#格兰杰因果检验var<-VAR(data.new,p = 1,lag.max=6,ic="AIC")causality(var, cause = "aba.ts")$Granger

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。