# Interpreting Results of Granger Causality Test

I have been using statsmodels python module to try and learn about Granger Causality. I know that this particular implementation uses four tests for non-causality, but I am having difficulty understanding the output of those tests.

The output is below:

Granger Causality

('number of lags (no zero)', 4)

ssr based F test: F=2.5343 , p=0.1677 , df_denom=5 , df_num=4

ssr based chi2 test: chi2=28.3842 , p=0.0000 , df=4

likelihood ratio test: chi2=15.5081 , p=0.0038 , df=4

parameter F test: F=2.5343 , p=0.1677 , df_denom=5 , df_num=4

1) I am looking for a brief explanation of each of the four tests.

2) I am also curious how I should interpret the fact that two of the tests have p-values below 0.05, but two have p-values above 0.05. Does this mean I should reject the null hypothesis, or not?

My main conclusion would be: not enough evidence, i.e. sample size too small to get a reliable answer.

The first 3 tests are variations of likelihood ratio tests that compare either sum of squares or likelihood values between restricted and unrestricted models, the last test is a Wald test on the parameters in the unrestricted model. The Wald test uses the standard nonrobust estimate for the covariance of the parameters and not a robust sandwich covariance.

The chi-squared distribution is the asymptotic distribution of the test statistic, while the F-distribution is in many cases more accurate in small samples and would be exact in the case of a simple normally distributed linear model.

Given that your degrees of freedom of the residual is only 5, you have only a small sample, so I think that the asymptotic chi2 distribution might be a pretty bad approximation to the actual distribution. So, I would rely more on the F-distribution which does not reject the hypothesis of non-causality. However, given the small sample size the power to reject the Null hypothesis will be small.