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? 
 A: 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.
