R语言-向量自回归模型VAR的实现
生活随笔
收集整理的這篇文章主要介紹了
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:/2017.csv") #讀取數據 aba<-data[,2] #將data數據的第2列賦值給aba數據框 ...#建立時間序列的日期列,將數據轉化為時間序列 aba.ts<-ts(aba,start=c(2016,10,6),end=c(2017,11,4),freq=395) #日期從2016.10.6-2017.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?
《新程序員》:云原生和全面數字化實踐50位技術專家共同創作,文字、視頻、音頻交互閱讀總結
以上是生活随笔為你收集整理的R语言-向量自回归模型VAR的实现的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 聚类算法中各种距离的计算与python的
- 下一篇: word使用技巧(不定时更新)