G-test
In statistics, G-tests are likelihood-ratio or maximum likelihood statistical significance tests that are increasingly being used in situations where chi-squared tests were previously recommended.[1]
The general formula for G is
where Oi is the observed frequency in a cell, Ei is the expected frequency under the null hypothesis, ln denotes the natural logarithm, and the sum is taken over all non-empty cells.
G-tests have been recommended at least since the 1981 edition of the popular statistics textbook by Robert R. Sokal and F. James Rohlf.[2]
Contents
Distribution and usage
Given the null hypothesis that the observed frequencies result from random sampling from a distribution with the given expected frequencies, the distribution of G is approximately a chi-squared distribution, with the same number of degrees of freedom as in the corresponding chi-squared test.
For very small samples the multinomial test for goodness of fit, and Fisher's exact test for contingency tables, or even Bayesian hypothesis selection are preferable to the G-test .[citation needed]
Relation to the chi-squared test
The commonly used chi-squared tests for goodness of fit to a distribution and for independence in contingency tables are in fact approximations of the log-likelihood ratio on which the G-tests are based. The general formula for Pearson's chi-squared test statistic is
The approximation of G by chi squared is obtained by a second order Taylor expansion of the natural logarithm around 1. This approximation was developed by Karl Pearson because at the time it was unduly laborious to calculate log-likelihood ratios. With the advent of electronic calculators and personal computers, this is no longer a problem. A derivation of how the chi-squared test is related to the G-test and likelihood ratios, including to a full Bayesian solution is provided in Hoey (2012).[3]
For samples of a reasonable size, the G-test and the chi-squared test will lead to the same conclusions. However, the approximation to the theoretical chi-squared distribution for the G-test is better than for the Pearson's chi-squared test.[4] In cases where for some cell case the G-test is always better than the chi-squared test.[citation needed]
For testing goodness-of-fit the G-test is infinitely more efficient than the chi squared test in the sense of Bahadur, but the two tests are equally efficient in the sense of Pitman or in the sense of Hodge and Lehman.[5][6]
Relation to Kullback–Leibler divergence
The G-test quantity is proportional to the Kullback–Leibler divergence of the empirical distribution from the theoretical distribution.
Relation to mutual information
For analysis of contingency tables the value of G can also be expressed in terms of mutual information.
Let
,
,
, and
.
Then G can be expressed in several alternative forms:
where the entropy of a discrete random variable is defined as
and where
is the mutual information between the row vector r and the column vector c of the contingency table.
It can also be shown[citation needed] that the inverse document frequency weighting commonly used for text retrieval is an approximation of G applicable when the row sum for the query is much smaller than the row sum for the remainder of the corpus. Similarly, the result of Bayesian inference applied to a choice of single multinomial distribution for all rows of the contingency table taken together versus the more general alternative of a separate multinomial per row produces results very similar to the G statistic.[citation needed]
Application
- The McDonald–Kreitman test in statistical genetics is an application of the G-test.
- Dunning[7] introduced the test to the computational linguistics community where it is now widely used.
Statistical software
- The R programming language has the likelihood.test function in the Deducer package.
- In SAS, one can conduct G-test by applying the
/chisq
option after theproc freq
.[8] - In Stata, one can conduct a G-test by applying the
lr
option after thetabulate
command. - Fisher's G-test in the GeneCycle Package of the R programming language (fisher.g.test) does not implement the G-test as described in this article, but rather Fisher's exact test of Gaussian white-noise in a time series.[9]
References
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Lua error in package.lua at line 80: module 'strict' not found.
- ↑ Dunning, Ted (1993). "Accurate Methods for the Statistics of Surprise and Coincidence", Computational Linguistics, Volume 19, issue 1 (March, 1993).
- ↑ G-test of independence, G-test for goodness-of-fit in Handbook of Biological Statistics, University of Delaware. (pp. 46–51, 64–69 in: McDonald, J. H. (2009) Handbook of Biological Statistics (2nd ed.). Sparky House Publishing, Baltimore, Maryland.)
- ↑ Fisher, R. A. (1929), "Tests of significance in harmonic analysis", Proceedings of the Royal Society of London: Series A, Volume 125, Issue 796, pp. 54–59.