R语言_格兰因果检验

#当前文件路径

getwd()

#设置当前路径,注意转译

setwd("C://Users//Administrator//Desktop//R_test")

#导入数据

data<-read.csv("data.csv")

1、平稳性检验
单位根检验
library(tseries)
adf.test(data$gov_day)
adf.test(data$med_day)
adf.test(data$pub_day)

P值均大于0.05,所以两者都没有通过单位根检验(都是不平稳的时间序列),因此对两者进行一阶差分,然后再进行单位根检验。

adf.test(diff(data$gov_day))
adf.test(diff(data$med_day))
adf.test(diff(data$pub_day))


都通过了平稳性检验
gov_day1 = diff(data$gov_day)
med_day1 = diff(data$med_day)
pub_day1 = diff(data$pub_day)

#判断政府和媒体的格兰因果关系
sr.reg = lm(gov_day1~med_day1)
error = residuals(sr.reg)
plot(error,main = "gov_day1--med_day1")
adf.test(error)
summary(sr.reg)

残差通过单位根检验
协整检验通过,也就是确认两者具有协整关系

 

grangertest(gov_day1~med_day1,order=2)
#P值小于0.05,通过检验,也就是拒绝了gov_day1不是引起med_day1格兰杰变化的原因即gov_day1是引起med_day1格兰杰变化的原因

grangertest(med_day1~gov_day1,order=2)
#P值大于0.05,没有通过检验,也就是接受了med_day1不是引起gov_day1格兰杰变化的原因即med_day1不是引起gov_day1格兰杰变化的原因

 

posted @ 2020-08-27 15:41  白月如初12138  阅读(8203)  评论(1)    收藏  举报